Я, кажется, собираюсь в кругах вокруг этой проблемы, и сейчас я не веду.NSLocale setPreferredLanguage
Я пытаюсь принудить язык моего приложения (к шведскому), как показано ниже.
@autoreleasepool {
[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObjects:@"sv", nil] forKey:@"AppleLanguages"];
[[NSUserDefaults standardUserDefaults]synchronize];
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
Я сделал это в основном методе, так что предпочтение задается, как только приложение запускается.
Тогда, когда я хочу отсортировать массив в алфавитном порядке, я использую NSSortDescriptor
с селектором localizedCaseInsensitiveCompare:
.
NSSortDescriptor * valueDescriptor = [[NSSortDescriptor Alloc] initWithKey: @ "iName" по возрастанию: ДА селектор: @selector (localizedCaseInsensitiveCompare :)];
NSArray * дескрипторы = [NSArray arrayWithObject: valueDescriptor];
self.ingredientsList = [NSMutableArray arrayWithArray: [self.ingredientsList sortedArrayUsingDescriptors: дескрипторы]];
Но моя проблема в том, что сортировка с моим местным языком происходит не в первый раз. Но если я перезапущу приложение, сортировка выполняется в соответствии с языком (шведский). Почему это не происходит в первый раз?
Что я делаю неправильно?
Помощь/предложения будут оценены. Thanks
Вы не должны возиться с настройками языка в первую очередь! – DarkDust
Я хочу, чтобы список в шведский был отсортирован в алфавитном порядке. (в алфавитном порядке на шведском языке, а не на английском языке, независимо от языка телефона пользователя). каков же правильный способ сделать это? – Neelesh
@ DarkDust не так ли принудительно использовать язык приложения? – Neelesh