我有一个包含多个部分的 UITableView。tableview 的一部分有 2 行,其中一个是可编辑的(插入按钮),另一个显示地址簿中的名称。单击单元格中的插入按钮,我正在加载 peoplePickerView 并选择一个联系人。
我从通讯录中获取联系人为
- (BOOL)peoplePickerNavigationController: (ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person {
NSString *firstName = (__bridge NSString *)ABRecordCopyValue(person, kABPersonFirstNameProperty);
NSString *middleName = (__bridge NSString *)ABRecordCopyValue(person, kABPersonMiddleNameProperty);
NSString *lastName = (__bridge NSString *)ABRecordCopyValue(person, kABPersonLastNameProperty);
self.contactName = [NSString stringWithFormat:@"%@/%@/%@", firstName ?: @"", middleName ?: @"", lastName ?: @""];
[self.myTableView reloadData];
[self dismissViewControllerAnimated:YES completion:nil];
return NO;
}
在 tableview 的 cellForRowAtIndexPath
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
if(indexPath.section == 0){
if(indexPath.row == 0){
cell.textLabel.text = self.contactName;
NSLog(@"Contact Name %@", self.contactName);
}
else{
cell.textLabel.text = @"";
}
}
}
当我设置为字符串时,只有 firstname 属性,然后字符串具有正确的值,但是当我尝试连接字符串(first +middle+last names)并重新加载 tableview 时,我得到一个空值。我做错了什么,我该如何纠正?