2011-07-01 4 views
1

NSSortDescriptor를 전달하는 영구 저장소에 NSFetchRequest를 사용하여 액세스하고 있습니다. 정렬 할 내용은 노르웨이어로되어 있으므로 사용자 환경 설정에 관계없이 항상로 정렬하려면 "nb-NO"로캘을 사용하십시오.주어진 로케일을 사용하여 NSSortDescriptor 만들기

NSSortDescriptor *sorting = [NSSortDescriptor sortDescriptorWithKey:@"title" ascending:YES selector:@selector(localizedCaseInsensitiveCompare:)]; 

이 작업을 수행하는 가장 간단한/깨끗한 방법은 무엇입니까 :

는 지금은 정렬을 확인하는 데 로케일을 사용하고 있습니다?

답변

0

프로젝트 선택 -> 정보 ---> "현지화 기본 개발 영역"을 "nb-NO"로 설정하십시오. 프로젝트에 특정 Localisaation 파일을 추가하는 것을 잊지 마십시오. :)

당신이 당신의 장치 언어에 따라 정렬 할 경우

는 아래의 코드

// Using fetch request 
-(NSFetchRequest*)returnFetchRequest:(NSFetchRequest*)fetchRequest 
{ 
    NSEntityDescription *entity = [NSEntityDescription entityForName:@"Your Entity Name" inManagedObjectContext:YOUR CONTEXT]; 
    [fetchRequest setEntity:entity]; 

    // Edit the sort key as appropriate. 
    NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:[NSString stringWithFormat:@"%@",NSLocalizedString(@"title", nil)] ascending:YES]; 
    NSArray *sortDescriptors = [NSArray arrayWithObjects:sortDescriptor, nil]; 

    [fetchRequest setSortDescriptors:sortDescriptors]; 

    return fetchRequest; 
} 
+0

텍스트가 이미 현지화에게 있습니다. 문제는 정렬 방법이며, 로케일에 따라 다릅니다. 세 글자 ÆØÅ은 "nb"로켈로 끝나야하지만, "로"로 이어지지는 않습니다. – Bruun

+0

프로젝트 선택 -> 정보 ---> "지역 네이티브 개발 영역"을 "nb-NO"로 설정하십시오. 프로젝트에 특정 Localisaation 파일을 추가하는 것을 잊지 마십시오. :) – Pras

+0

정말로 내가 성취하고 싶은 것이 아닙니다. 그냥 그 로케일을 사용하여 * sort *하고 싶습니다. 텍스트는 이미 노르웨이어에 있습니다. 어쨌든 시도했지만 솔루션이 작동하지 않았습니다. – Bruun

관련 문제