2012-02-13 35 views
0

我在初学者级别的iOS编程。我在iOS Simulator 5.0中使用Xcode 4.2。 我使用iOS版的文件Address Book programming Guide使得快速入门教程应用程序,我已经遵守了本教程的所有步骤,但我得到这个代码的一个奇怪的错误:地址簿编程指南iOS文档的一个奇怪问题

-(BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person 
{ 
    NSString *name; 
    name = (NSString *) ABRecordCopyValue(person, kABPersonFirstNameProperty); 
    self.firstName.text=name; 

    name=(NSString *)ABRecordCopyValue(person, kABPersonFirstNameProperty); 
    self.lastName.text=name; 
    [self dismissModalViewControllerAnimated:YES]; 
    return NO; 
} 

在行:

name = (NSString *) ABRecordCopyValue(person, kABPersonFirstNameProperty); 

我得到错误Cast of C pointer type 'CFTypeRef' (aka 'const void *') to Objective-C pointer type 'NSString *' requires a bridged cast

我在这里做错了什么?

回答

0

请看看this link已与最新更新时间:

NSString* name = (__bridge_transfer NSString*)ABRecordCopyValue(person, 
              kABPersonFirstNameProperty); 

NSString* name = (__bridge NSString*)ABRecordCopyValue(person, 
              kABPersonFirstNameProperty);