Мне нужно извлечь данные из контактов JSON ответа - PullRequest
0 голосов
/ 24 декабря 2018

Я пытаюсь получить данные из контактов, и мне нужно передать их в таблицу, я взял 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 из массива, и мне нужно проанализировать его в метке.

Я загрузил таблицу для анализа.

 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 = (не получены)>,>")

1 Ответ

0 голосов
/ 24 декабря 2018

Попробуйте это для того, что вы опубликовали как 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)
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...