2017-03-03 3 views
5

Apples Photos Framework를 사용하여 PHAssetCollections를 내 앱에로드하고 있습니다. 나는 항상 스마트 컬렉션의 영어 이름을 얻습니다. 예를 들어 'Favoriter'대신 'Favoriter'(스웨덴어)를 사용합니다. localizedTitle 속성이 Simulator 나 iPhone이 실행 한 언어를 반환한다고 생각했습니다. (스웨덴어 및 지역으로 iPhone에서 실행).iOS PHAssetCollection localizedTitle은 항상 영어 이름을 반환합니다.

누구에게도이 문제가 발생 했습니까? 예제 코드 :

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 
    } 
} 

답변

4

collection.localizedTitle의 언어가 English 인 지역화가 하나만 있기 때문에 다른 언어가 표시되지 않는 이유는 무엇입니까? 이것은 분명히 Apple Bug이지만 여기에 이러한 단계를 따르는 해킹이 있습니다.

  1. 이미 보유한 en.lproj 폴더 이외의 관련 폴더 sv.lproj을 만듭니다.
  2. 빈 텍스트 파일을 폴더에 추가 한 다음 프로젝트에 파일을 추가하십시오.
  3. 2 단계 수행. 프로젝트에 스웨덴어 지원을 추가합니다.
  4. 코드를 실행하면 제목이 스웨덴어로 반환됩니다.

업데이트

쉽게, 당신이 프로젝트를 선택하여 다른 대답했다처럼 추가 할 수있는 빈 텍스트를 추가 한 후 더 많은 언어를 추가하고 현지화 섹션에 언어를 추가하고 다시 빈 파일을 선택하려면 다른 파일을 지역화하고 싶지 않기 때문입니다.

여기에 문의하는 것이 좋습니다.

건배.

+0

감사합니다. 그것은 아름답게 일했습니다! –

0

귀하의 문제가 명시 적으로 인출의 아무도 없을 또는 암시 적으로 내장 된 즐겨 찾기 스마트 앨범을 반환 할 수 있습니다. (또한 코드를 가져 와서 한 번의 가져 오기 결과 만 검사하도록 진단하는 데 도움이되므로 어느 지역에 "즐겨 찾기"가 포함되어 있는지 파악할 수 있습니다.)

명시 적으로 즐겨 찾기를 원할 경우 컬렉션을 검색하려면 PHAssetCollectionSubtypeSmartAlbumFavorites 컬렉션 하위 유형으로 검색하십시오. (일반 앨범 또는 동기화 된 앨범 검색으로 인해서는 안되며 사용자가 만든 컬렉션 만 반환하는 것으로 문서화되어 있으므로 최상위 사용자 컬렉션에서 볼 수 있습니다.)

즐겨 찾기 스마트 앨범 요청이 현지화되지 않은 버전을 반환하거나 다른 가져 오기 중 하나가 즐겨 찾기 스마트 앨범을 반환하고 현지화되지 않은 것 같습니다. 아마도 Apple 버그 일 것입니다. telling them about it을 권하고 싶습니다.

1

스웨덴어를 지원하는지 확인해야한다고 생각합니다. 당신이 예를 들어 add Swedish language

-1

프로젝트를 스웨덴어를 지원하기 위해 언어를 추가 -> 언어 버전은 -> "+ 중국어는 (간체)"enter image description here

+1

왜이 질문에 대답합니까? – paper1111

관련 문제