0

我尝试在我的应用程序中使用 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);

编辑:我只是忘了在项目本地化中添加语言

4

1 回答 1

0

它根据用户的首选系统语言以应用程序支持的语言显示。

本地化视图苹果使用 NSLocalizedString 并使用:

    NSArray* preferredLanguages = [NSLocale preferredLanguages];
    NSString* languageCode = preferredLanguages[0];

您可以在第一次使用 NSLocalizedString 之前更改它,但它不能即时更改。请注意,它会更改所有 NSLocalizedString 调用的语言

于 2014-07-16T13:28:38.113 回答