我使用Apples将PHAssetCollections加载到我的应用程序中。我总是得到智能系列的英文名称。例如,我得到‘收藏’而不是'Favoriter‘(瑞典语)。我认为localizedTitle属性将返回模拟器或iPhone运行的语言。(在带有瑞典语和区域的iPhone上运行)。
还有其他人遇到过这个吗?示例代码:
NSArray *collectionsFetchResults;
NSMutableArray *localizedTitles = [[NSMutableArray alloc] init];
PHFetchResult *smartAlbums = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeSmartAlbum
subtype:PHAssetCollectionSubtypeAlbumRegular options:nil];
PHFetchResult *syncedAlbums = [PHAssetCollection fetchAssetCollectionsWithType:PHAssetCollectionTypeAlbum
subtype:PHAssetCollectionSubtypeAlbumSyncedAlbum options:nil];
PHFetchResult *userCollections = [PHCollectionList fetchTopLevelUserCollectionsWithOptions:nil];
// Add each PHFetchResult to the array
collectionsFetchResults = @[smartAlbums, userCollections, syncedAlbums];
for (int i = 0; i < collectionsFetchResults.count; i ++) {
PHFetchResult *fetchResult = collectionsFetchResults[i];
for (int x = 0; x < fetchResult.count; x ++) {
PHCollection *collection = fetchResult[x];
localizedTitles[x] = collection.localizedTitle;
NSLog(@"%@", collection.localizedTitle); //<= Always prints english names
}
}发布于 2017-03-07 07:16:21
为什么collection.localizedTitle不返回任何其他语言,因为您的应用程序只有一个本地化,即English。这绝对是一个苹果Bug,但这里有一个黑客遵循以下步骤。
sv.lproj文件夹之外,创建相关文件夹en.lproj。更新
如果要在添加空白文本后轻松添加更多语言,可以通过选择Project添加“在其他答案中显示的语言”,在本地化部分“添加语言”部分再次选择“空白文件”,因为我们不希望本地化其他文件。
希望它有帮助,如果怀疑问这里。
干杯。
发布于 2017-03-09 08:54:32
我认为你应该确保你的应用程序支持瑞典语。添加要支持瑞典语的语言,例如

发布于 2017-03-06 20:27:06
您的问题可能是,您的获取没有显式或隐式返回内置收藏夹智能相册。(此外,它还有助于诊断,让您的代码只检查一次提取的结果,这样您就可以知道哪一个包含非本地化的“收藏”)。
如果显式地想要收藏集,请使用PHAssetCollectionSubtypeSmartAlbumFavorites集合子类型搜索它。(这不应该是搜索常规相册或同步相册的结果,我会惊讶地看到它出现在顶级的用户集合中,因为这被记录为只返回用户创建的集合。)
如果显式地请求收藏智能专辑返回一个非本地化版本,或者您的另一个获取返回收藏智能专辑,而它没有本地化,这可能是苹果的缺陷-我推荐告诉他们。
https://stackoverflow.com/questions/42579544
复制相似问题