- (NSString *)countryNameByCode:(NSString*)countryCode { NSString *identifier = [NSLocale localeIdentifierFromComponents:@{NSLocaleCountryCode: countryCode}]; NSString *countryName = [[NSLocale currentLocale] displayNameForKey:NSLocaleIdentifier value:identifier]; return countryName; }
странаName ноль. Зачем?xcode 6.1 iOS 8.1 NSLocale displayNameForKey NSLocaleIdentifier return noil
Эта проблема: http://stackoverflow.com/questions/26603766/swift-nslocale-simulator-ios-8 –
Эта проблема только в симуляторе. Я тестировал его на устройстве сегодня, я получаю правильное название страны. –
просто наткнулся на эту проблему на симуляторах - я заполняю табличное представление со списком всех стран, а в симуляторе он просто разбился из-за того, что displayNameForKey вернул нуль. Я пробовал это на всех симуляторах с 8.1, и все они рушились. iPhone4 и iPhone 5 с iOS 7.1 работают нормально. Мой код также отлично работает на физических устройствах iPhone4 и iPhone5 с установленным 8.1, поэтому я предполагаю, что это просто ошибка Xcode. решение - до тех пор, пока яблоко не исправит ошибку, тест на устройстве - это ошибка, так как у меня нет 6 и 6 плюс :( – SimonTheDiver