2014-11-08 25 views
0

我正在构建一个应用程序,让用户从他们的图库中拍照来做事情。我正在使用X代码,并且我在'didFinishLaunchingWithOptions'下面有了这段代码,但不断收到'未声明的标识符'错误。该怎么办?如何在启动时要求访问照片库?

ALAssetsLibraryGroupsEnumerationResultsBlock assetGroupEnumerator = 
^(ALAssetsGroup *assetGroup, BOOL *stop) { 
    if (assetGroup != nil) { 
     // do somthing 
    } 
}; 

ALAssetsLibraryAccessFailureBlock assetFailureBlock = ^(NSError *error) { 
    LogError(@"Error enumerating photos: %@",[error description]); 

}; 

NSUInteger groupTypes = ALAssetsGroupAll; 

[library enumerateGroupsWithTypes:groupTypes usingBlock:assetGroupEnumerator failureBlock:assetFailureBlock]; 
+0

有什么你没有把ViewController的viewDidLoad方法置于特殊原因? – bpolat 2014-11-09 19:59:57

回答

0

太晚了一个答案,但你需要定义库

ALAssetsLibrary *library = [[ALAssetsLibrary alloc] init]; 

或更好地使用一个类的方法,如果你打算重用库更多查询

+ (ALAssetsLibrary *)defaultAssetsLibrary 
{ 
    static dispatch_once_t pred = 0; 
    static ALAssetsLibrary *library = nil; 
    dispatch_once(&pred, ^{ 
     library = [[ALAssetsLibrary alloc] init]; 
    }); 
    return library; 
}