Я хочу создать повторно используемый компонент (настраиваемый элемент управления) для iPhone. Он состоит из нескольких стандартных элементов управления, предварительно размещенных в представлении, а затем некоторого связанного кода. Мои цели:
Позвольте мне быть более конкретным и конкретно скажу вам, что должен делать мой элемент управления. В моем приложении мне иногда нужно обратиться к веб-службе, чтобы проверить данные, введенные пользователем. Ожидая ответа от веб-службы, я хочу отобразить счетчик (индикатор активности). Если веб-службы отвечают кодом успеха, я хочу отобразить галочку «успешно». Если веб-служба отвечает кодом ошибки, я хочу отобразить значок ошибки и сообщение об ошибке.
Одноразовый способ сделать это довольно просто: я просто создаю UIView, который содержит UIActivityIndicatorView, два UIImages ( один для значка успеха и один для значка ошибки), а также UILabel для сообщения об ошибке. Вот скриншот, на котором соответствующие части отмечены красным:
Затем я подключаю части к розеткам и вставляю код в свой контроллер.
Но как мне упаковать эти части - код и небольшую коллекцию представлений - чтобы я мог повторно использовать их ? Вот несколько вещей, которые я обнаружил, которые помогли мне достичь цели, но не так уж хороши:
WebServiceValidatorController
) со связанным файлом XIB. Это действительно выглядит многообещающе, но тогда я не могу понять, как в Interface Builder перетащить этот компонент на другие представления. WebServiceValidatorController
- это контроллер, а не представление, поэтому я могу перетащить его в окно документа, но не в представление. У меня такое чувство, что я упускаю что-то очевидное ...