我尝试在我的应用中使用ABUnknownPersonViewController,但它只是英文版。我认为如果AddressBookUI以系统语言自动显示它会更好。有没有办法用其他语言显示它或者我需要自己创建控制器?
更新:代码
ABRecordRef aContact = ABPersonCreate();
ABMutableMultiValueRef phoneNumbers = ABMultiValueCreateMutable(kABMultiStringPropertyType);
ABMultiValueAddValueAndLabel(phoneNumbers, (__bridge CFStringRef)labelNumber.text, kABPersonPhoneMainLabel, NULL);
ABRecordSetValue(aContact, kABPersonPhoneProperty, phoneNumbers, nil);
ABUnknownPersonViewController *picker = [[ABUnknownPersonViewController alloc] init];
picker.unknownPersonViewDelegate = nil;
picker.displayedPerson = aContact;
picker.allowsAddingToAddressBook = YES;
picker.allowsActions = YES;
[self.navigationController pushViewController:picker animated:YES];
[picker release];
CFRelease(phoneNumbers);
CFRelease(aContact);
答案 0 :(得分:0)
它以应用程序支持的语言显示,基于用户的首选系统语言。
本地化视图apple使用NSLocalizedString并使用:
NSArray* preferredLanguages = [NSLocale preferredLanguages];
NSString* languageCode = preferredLanguages[0];
您可以在第一次使用NSLocalizedString之前更改它,但它无法动态更改。 请注意,它将更改所有NSLocalizedString调用的语言