Нормальная работа


Нормальная работа

Итак, теперь вы знаете, что необходимо создать для нормальной работы прокручиваемого списка: делегата и источник данных. Давайте вернемся к Xcode и создадим их. Для этого необходимо внести изменения в два файла из категории Classes: InstaEmailViewController.h и InstaEmailViewController.m. Оба файла были созданы в начале проекта.

Файлы .h и .ш работают в паре: в заголовочном файле (.h) объявляется интерфейс класса, переменные, действия и т. д., а в файле реализации (.ш) содержится код их фактической реализации. Мы должны изменить заголовочный файл так, чтобы в нем было объявлено о поддержке классом InstaEmailViewController протоколов UIPickerViewDataSource и UIPickerViewDelegate.

Включите описания действий и чувств Васи в список реализации

Переходим к файлу реализации InstaEmailViewController.m. В него необходимо включить реализации обязательных методов протокола, но к этому мы вернемся чуть позднее. А начнем с добавления списков вариантов действий и чувств Майка. Они будут храниться в двух массивах, которые мы объявили в заголовочном файле.

Протокол источника данных содержит два обязательных метода

Начнем с методов протокола источника данных. В заголовочном файле указано, что InstaEmailViewController поддерживает протокол UIPickerViewDatasource. В этот протокол входят два обязательных метода: numberOfComponentsInPickerView:pickerView и pickerView:num berOfRoselnComponent. Так как известно, что в нашем представлении прокручиваемый список будет состоять из двух «колес» (компонентов), мы можем включить соответствующий метод в файл реализации.

Второй метод должен возвращать количество строк для каждого компонента списка. Аргумент component указывает, к какому компоненту относится запрос; первому компоненту соответствует значение 0. Количество строк в компоненте равно количеству элементов в соответствующем массиве.
Методы реализованы, теперь нужно связать их с прокручиваемым списком.

Связывание источника данных с элементом

Итак, протокол источника данных реализован, данные хранятся в положенном месте; остается связать их с элементом. Откройте Interface Builder.
Щелкните правой кнопкой мыши на прокручиваемом списке в представлении, чтобы вызвать окно связей.

Обратите внимание: в качестве владельца файла (Files Owner) для этого представления указан класс InstaEmailViewController, реализующий необходимые протоколы источника данных и делегата. Осталось связать источник данных прокручиваемого списка с контроллером. Для этого щелкните на кружке в строке dataSource и перетащите его на строку Files Owner.
  • Дата: 1-12-2014, 22:10

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

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



Отзывы о статье: Нормальная работа

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