Прокручиваемый список


Прокручиваемый список

Прокручиваемый список: О да! Когда я запрашиваю у делегата конкретную строку, он может вернуть вместо строки целое представление. Туда можно включить значок или графику — словом, я умею отображать все, что только можно втиснуть в представление.

Head First: Потрясающе! Спасибо за беседу.

Соедините каждую характеристику прокручиваемого списка с частью модели, к которой она относится, — делегатом или источником данных. Чтобы узнать, кому принадлежат три метода, вам придется немного покопаться в документации API.

Постойте, а что это за протоколы. У источника данных и у делегата?

Протоколы определяют, на какие сообщения должны отвечать источники данных и делегаты.

У прокручиваемых списков (и других элементов, использующих делегатов и источники данных) определены конкретные сообщения, на которые должны реагировать их вспомогательные классы. Сообщения более подробно рассматриваются в следующей главе, а пока достаточно знать, что сообщения определяются в протоколах. Протоколы являются аналогами абстрактных интерфейсов в Objective-C.

Протоколы определяют методы (сообщения), которые долЖны быть реализованы классомю.

Обычно в протоколе некоторые методы обязательны для реализации, а другие не обязательны. Например, протокол UIPickerViewDatasource содержит обязательный метод с именем pickerView:numberOfRowsInComponent; этот метод необходим для работы источника данных прокручиваемого списка. Однако в протокол UIPickerViewDelegate входит необязательный метод pickerView:titleForRow:forComponent; если он вам не нужен, не включайте его в делегата.

Как определить, какие протоколы важны в каждом конкретном случае? В документации элемента указано, с какими протоколами он должен взаимодействовать. Например, элементу UlPickerView нужен источник данных, с которым он общается через протокол UIPickerViewDataSource, а также делегат, с которым он общается через протокол UIPickerViewDelegate. Щелкните на имени протокола; открывается документация о том, какие сообщения являются обязательными, а какие необязательными. Реализация сообщений будет рассматриваться в следующей главе, а пока мы предоставим вам готовый код.

Прежде всего следует объявить, что контроллер поддерживает оба протокола.
  • Дата: 1-12-2014, 17:35

Предыдущие статьи сайта:

Понравилась статья? Ставь лайки, рассказывай друзьям!



Отзывы о статье: Прокручиваемый список

Технологии, секреты и фишки Apple: Iphone, iPad, iPod