我正在尝试从联系人中获取数据,我需要将其传递到tableview中,我已经使用了firstName,LastName和phoneNumber。我正在获取一个电话号码数组,但我不知道如何从响应中获取特定的电话号码。请帮助我。
我已粘贴回复以供您参考。
[<CNContact: 0x155e8c1b0: identifier=DD78D98D-3ECD-4743-8FBB-AF67CC544BB7, givenName=S, familyName=Jerry Mom, organizationName=(null), phoneNumbers=(
"<CNLabeledValue: 0x280c8b200: identifier=10BB271D-611B-4D15-A452-BC553B79A9BF, label=_$!<Mobile>!$_, value=<CNPhoneNumber: 0x2816469c0: stringValue=+917904619229, initialCountryCode=(null)>>"
) 一组联系人的响应,然后继续.. 我需要从数组中单独获取这个数字917904619229,然后将其解析为label。
我已加载表解析以供您参考。
let contactsList = contacts[indexPath.row]
let cell = tableView.dequeueReusableCell(withIdentifier: "cell2") as? contactListCell
cell?.profileName.text = contactsList.familyName
cell?.profileCountry.text = "\(contactsList.phoneNumbers)"
return cell!
}
使用此"\(contactsList.phoneNumbers)"
将整个数组加载到标签中。
[<CNContact: 0x155e8c1b0: identifier=DD78D98D-3ECD-4743-8FBB-AF67CC544BB7, givenName=S, familyName=Jerry Mom, organizationName=(null), phoneNumbers=(
"<CNLabeledValue: 0x280c8b200: identifier=10BB271D-611B-4D15-A452-BC553B79A9BF, label=_$!<Mobile>!$_, value=<CNPhoneNumber: 0x2816469c0: stringValue=+91790989898984619229, initialCountryCode=(null)>>"
),emailAddresses =( ),postalAddresses =((未提取)>,!$ _,value =>“ ),emailAddresses =( ),postalAddresses =(未提取)>,>“ ),emailAddresses =( ),postalAddresses =(未提取)>,>“ ),emailAddresses =( ),postalAddresses =(未提取)>,>“ )
答案 0 :(得分:0)
试试这个,像这样发布为json!
{
familyName = "Jerry Mom";
organizationName = nil;
phoneNumbers = (
{
initialCountryCode = "IN ";
"stringValue" = "+917904619229 ";
}
);
}
for phoneNumber in phoneNumbers {
if let phoneValue = phoneNumber.object(forKey: "stringValue") as? String {
print(phoneValue)
}
}
或
for phone in contact.phoneNumbers {
if let phonValue = phone.value as? CNPhoneNumber {
print(phonValue.stringValue)
}
}