WedX - журнал о программировании и компьютерных науках

Создание объекта ABPerson

У этой проблемы почти наверняка будет очень простой ответ, но я просто не вижу его. Я программирую приложение для iPhone в Xcode и пытаюсь создать экземпляр объекта ABPerson, но не могу. В моем файле .h я импортирую следующее:

#import <AddressBook/AddressBook.h>
#import <AddressBook/ABPerson.h>

Затем, когда я пытаюсь создать его с помощью «ABPerson * person;», выдает ошибку «Неизвестное имя типа« ABPerson »».

Я искал в Интернете, и, похоже, не так много информации об использовании ABPerson, и там, где я видел его использование, они сделали это так, и это работало нормально.

В конечном счете, я хочу создать VCard, содержащую информацию о ком-то, которую пользователь может затем сохранить на свой телефон, поэтому, если вы знаете другой способ сделать это, который устранит эту проблему, это тоже было бы здорово.

Спасибо,

Мэтью


Ответы:


1

Вы добавили структуру AddressBook в свое приложение? Посмотрите в XCode4, посмотрите на файл вашего проекта -> Фазы сборки -> Связать двоичный файл с библиотеками.

18.08.2011
  • Да, все было добавлено. Я импортировал ‹AddressBook/AddressBook.h› и ‹AddressBook.ABPerson.h› 18.08.2011
  • Только что увидел ваш код... 2 вещи: а) нет такого понятия, как тип ABPerson; то, что вы, вероятно, хотите, это ABRecordRef. b) Типы адресных книг не являются объектами Objective-C, поэтому вы не можете создать на них указатель. Вероятно, это то, что вам нужно: ABRecordRef person = ABPersonCreate(); 19.08.2011
  • Хорошо, спасибо, теперь у меня есть ABPerson, созданный, как вы сказали выше. Теперь я пытаюсь инициализировать ABPerson, созданный с помощью VCardRepresentation, используя метод initWithVCardRepresentation, но пока безрезультатно. Можете ли вы пролить свет на это? 22.08.2011
  • Хотя на самом деле, когда я пытаюсь запустить его сейчас, он терпит неудачу. В моих файлах .h у меня есть человек ABRecordRef, а затем @property (неатомный, назначаемый) человек ABRecordRef; Затем в моем файле .m я синтезирую «человек» и инициализирую его person = ABPersonCreate(); и это дает мне символ (символы) ошибки, не найденный для архитектуры i386 Любые идеи, почему это происходит? 22.08.2011
  • Хорошо, разобрался с этим сейчас, и он снова компилируется, но мне все еще не удалось заставить работать initWithVCardRepresentation 22.08.2011
  • Вы должны оформить это как отдельный вопрос. У меня нет опыта работы с API initWithVCardRepresentation. Вы должны отметить этот ответ для исходной проблемы. 23.08.2011

  • 2

    Попробуй это.

    #import <AddressBook/AddressBook.h>
    #import <AddressBook/ABAddressBook.h>
    
    19.08.2011
    Новые материалы

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..

    ИИ в аэрокосмической отрасли
    Каждый полет – это шаг вперед к великой мечте. Чтобы это происходило в их собственном темпе, необходима команда астронавтов для погони за космосом и команда технического обслуживания..


    Для любых предложений по сайту: [email protected]