Детализированное представление


Детализированное представление

Вывод подробной информации в детализированном представлении

Ранее мы отнесли DrinkMixer к типу функциональных приложений и выбрали навигационный контроллер, потому что приложение должно работать с иерархическими данными. Сейчас в основном представлении загружается длинный список рецептов, но Петю интересует получение подробной информации о каждом коктейле: из каких он состоит ингредиентов, как они смешиваются и т. д. Мы воспользуемся навигационным контроллером для вывода подробного описания коктейля из списка.

При работе с табличными представлениями используется стандартная схема: когда пользователь выбирает конкретную ячейку, на экране появляется подробная информация о выбранном элементе. В нашем приложении пользователь выбирает коктейль для вызова детализированного представления. В нем используется тот же паттерн «Модель-Представление-Контроллер», что и в других представлениях.

Близкое знакомство с детализированным представлением

Ранее мы уже набросали эскиз детализированного представления. Но давайте повнимательнее присмотримся к тому, что мы собираемся построить.
Итак, вы примерно представляете, что вам предстоит сделать: нужно создать необходимые файлы и код, объединить их в nterface Builder и связать между собой. За дело!

Создание необходимых файлов.

Для создания нового представления нам понадобится новый файл .xib, а также соответствующий заголовочный файл с файлом реализации. Файл относится к типу Cocoa Touch Class type, а класс является субклассом UlViewController.

Создание макета нового представления в Xcode.

Перетащите из библиотеки объектов элементы, необходимые для построения описанного ранее представления.
Подсказка: чтобы зарезервировать место для навигационной панели, вызовите панель Utilities и включите Attributes Inspector. В группе Simulated Metrics, Тор Ваг выберите Navigation Controller.

Ваше представление будет размещаться под навигационной панелью.

Объявление новых свойств.

Изменения вносятся в файлах DetailViewController.h и DetailViewController.m. Присвойте новым свойствам имена nameTextField, ingredientsTextView и directionsTextView. Не забудьте переменные экземпляров, директивы @synthesize и вызовы release.

Связывание элементов детализированного представления с новыми свойствами.

Свяжите элементы со свойствами в Interface Builder (по аналогии с тем, как было сделано в приложении InstaEmail).

Запрет редактирования текстовых полей.

В Inspector найдите флажок, который запрещает редактирование текстовых полей.

Функциональные приложения хорошо подходят для работы с иерархическими данными.

Навигационные контроллеры позволяют управлять несколькими представлениями.
  • Дата: 9-12-2014, 18:10

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

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



Отзывы о статье: Детализированное представление

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