PropertyID адресной книги - неизвестный тип? - PullRequest
0 голосов
/ 01 февраля 2011

Работа над приложением, которое интенсивно использует структуру адресной книги. Существует несколько контроллеров представления, которые взаимодействуют с данными адресной книги, и все они работают просто отлично. За исключением одного, и это убивает меня.

У меня есть класс, который оборачивает доступ к адресной книге, в методе, таком как:

- (NSDictionary*)labelsToValues:(ABPropertyID)propertyID {
ABAddressBookRef addressBook = ABAddressBookCreate();
ABRecordRef aRecord = ABAddressBookGetPersonWithRecordID(addressBook, [self recordIdFromAddressBookId]);

NSMutableDictionary *entries = [NSMutableDictionary dictionary];    

ABMultiValueRef multiValueProperty = ABRecordCopyValue(aRecord, propertyID);
// do some other stuff

А потом я называю это в таких местах:

- (NSDictionary*)emailProperties {
return [self labelsToValues:kABPersonEmailProperty];
}

И это работает! Конечно, я отправляю сообщение с аргументом, который является константой из структуры адресной книги. Так должно работать всегда!

Но это не тот случай. Этот конкретный emailProperties: сообщение это то, что я звоню в нескольких местах ... и иногда это работает, но иногда это не так. Когда все идет не так, я ставлю это через отладчик и получаю что-то вроде этого: enter image description here

Как это возможно !? Даже странно, если я как бы «заправляю» проблемный View Controller, просматривая другие View Controller, где все ведет себя как положено, а затем я возвращаюсь к проблемному View Controller, все работает нормально. Итак, я предполагаю, что это какая-то ошибка компоновки, но я не уверен, как начать с устранения этой проблемы.

1 Ответ

0 голосов
/ 13 февраля 2011

Оказывается, мой вопрос был обманом Константы адресной книги, оцениваемые как ноль , пожалуйста, проголосуйте, чтобы закрыть.

...