UILocalizedIndexedCollation locale отличается от английского
Я использую Tableview с UILocalizedIndexedCollation, чтобы показать индекс справа, но язык в моем телефоне - шведский (svenska), поэтому я вижу некоторые специальные символы, специфичные для шведского языка, такие как ä ä ö после AZ . В AZ отсутствуют некоторые символы, такие как Q, X и т. Д., Которых, как мне кажется, нет в локали Sweidsh.
Я сталкиваюсь с проблемой, когда я нажимаю сказать "S", он показывает мне раздел "R" вместо "S", хотя в "S" есть записи. Также для последних символов "å", "ä" меня переводят в X и Y соответственно, хотя в LocalizedIndexedCollation нет "X".
Я тоже следовал этому руководству http://benedictcohen.co.uk/blog/archives/230 но это не решило мою проблему.
Любая помощь в этом была бы отличной.
Благодарю.
1 ответ
То же самое на корейском с iOS7 GM.
Я также проверил японский, но проблема не в том, с чем мы столкнулись.
Разница между японским и корейским заключается в заказе ( ссылка)
На корейском корейский встречается до английского.
Но на японском, английский происходит до японского, когда я тестировал.
Когда я проверяю этот метод,
- (NSInteger)tableView:(UITableView *)tableView sectionForSectionIndexTitle:(NSString *)title atIndex:(NSInteger)index
{
NSLog(@"%i", index);
NSLog(@"%i", [[UILocalizedIndexedCollation currentCollation] sectionForSectionIndexTitleAtIndex:index]);
}
Я могу заметить, что sectionForSectionIndexTitleAtIndex увеличивается в соответствии с данным индексом ненормально.
- sectionForSectionIndexTitleAtIndex увеличивается на 4 ("A" + 1 - "F"), когда "ㄴ" -> "ㄷ" (индекс увеличивается только на 1).
- Инкремент sectionForSectionIndexTitleAtIndex повторяется. 1, 4, 1, 4 ...
Мой вывод об этой проблеме заключается в том, что ошибка iOS7 в Unicode с упорядочением ASCII.
Итак, я временно изменю tableView:sectionForSectionIndexTitle: метод atIndex работает так, как я планировал.