1

我收到以下错误消息:invalid attempt to access <ALAssetPrivate: 0xa4a1ed0> past the lifetime of its owning ALAssetsLibrary当我尝试创建自定义图像选择器时。

我使用这个APPLE示例来创建这个应用程序。示例 Apple 应用程序运行良好。但是当我将该示例代码复制到我的应用程序时,它会收到上述错误消息。

请有人可以帮助我为什么会出现此错误并ALAssetsGroup变为空。

4

1 回答 1

6

我找到了这个问题的答案。问题是我使用的 ALAssetsLibrary 被 ARC 为空。解决方案是,添加此静态方法而不是 ALAssets Library..

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

来源

于 2014-03-26T19:10:18.830 回答