У меня есть класс «Контакт», который управляет личной информацией некоторых людей. Теперь я хочу, чтобы сохранить некоторые из этой информации, используя контактную Framework введен с прошивкой 9.Телефонный массив Contact Framework
Мой Контакт класс имеет
- домашнего номера (huisnummer на голландском языке)
- Мобильный телефон (Mobiel на голландском языке)
Поскольку некоторые из контактов не имеют домашнего номера и некоторые из контактов не имеют номер мобильного телефона это трудно для меня, чтобы создать массив:
// cnContact is an object of the Contact Framework class
// contact is an object of my Contact class
if let huisnummer = contact.huisnummer {
if let mobiel = contact.nummer {
cnContact.phoneNumbers = [CNLabeledValue(label: CNLabelPhoneNumberMain, value: CNPhoneNumber(stringValue: huisnummer)),CNLabeledValue(label: CNLabelPhoneNumberMobile, value: CNPhoneNumber(stringValue: mobiel))]
} else {
[CNLabeledValue(label: CNLabelPhoneNumberMain, value: CNPhoneNumber(stringValue: huisnummer))]
}
} else {
if let mobiel = contact.nummer {
cnContact.phoneNumbers = [CNLabeledValue(label: CNLabelPhoneNumberMobile, value: CNPhoneNumber(stringValue: mobiel))]
}
}
Мне нужно продолжить проверку с использованием условий SWIFT, если указанное число существует. Но я думал, так как это неэффективный способ сохранить эти контакты, что должен быть более эффективный способ сохранить это.
Как вы можете создать телефонные номера cnContact более эффективным способом?
Марло, какие проблемы вы сталкиваетесь сейчас? – user3182143
Вы хотите получать контакты с iPhone с помощью Contact framework? – user3182143
Проблема, с которой я столкнулся, создает (не извлекает) контакты с иногда только мобильным номером, иногда только основным номером, а иногда и тем и другим. Я делаю это с использованием вышеприведенного кода, но это циклы условных выражений, в то время как я чувствую, что должен быть более эффективный способ создания контакта из-за дублирования кода (вложенные, если позволяют инструкции с тем же запущенным кодом создания массива). Но пока я печатал это, я понял решение :-) Я отредактирую исходный вопрос, чтобы стало ясно! – Emptyless