Создание каркаса приложения Nav
В среде Xcode нажмите комбинацию клавиш , чтобы создать новый проект, и выберите из списка шаблонов iOS Application вариант Window-based Application, убедившись, что флажок Use Core Data for storage сброшен и что в раскрывающемся списке Product выбран пункт iPhone. Дайте своему новому проекту имя Nav.
Если вы щелкнете на папках Classes и Resources, то увидите, что этот шаблон предложит вам воспользоваться делегатом приложения (в виде файла MainWindow.xib) и, по сути, больше ничем. На данном этапе у нас нет ни контроллеров представления, ни контроллеров навигации.
Для того чтобы это приложение "задышало", нам нужно добавить в него контроллер навигации, который бы включал навигационную панель (navigation bar). Нам также понадобится добавить ряд представлений и контроллеров представлений, чтобы навигационной панели было что отображать. Первое из этих представлений — представление верхнего уровня — показано на 9.2. Каждая строка этого представления верхнего уровня связана с контроллером дочернего представления ( 9.3-9.8). Как работают эти связи, вы поймете в процессе чтения этой главы. Легкий привал — и снова в путь!
Создание контроллера представления верхнего уровня
В этой главе для наших табличных представлений мы будем создавать подклассы из класса UITabieViewController, а не из класса UlViewController. Выводя подклассы из класса UITabieViewController, мы тем самым обеспечиваем наследование замечательных функций родительского класса, в результате чего создание табличного представления не потребует nib - файла. Мы, конечно, можем реализовать табличное представление в nib-файле, как мы и поступили в предыдущей главе, но если мы не будем этого делать, класс UITabieViewController создаст табличное представление автоматически. Это табличное представление займет все доступное пространство и соединит соответствующие выходы в классе нашего контроллера, сделав класс контроллера делегатом и источником данных для этой таблицы.
Если все, что необходимо иметь для конкретного контроллера, заключено в таблице, то выведение подкласса из класса UITableViewController — это путь, по которому мы должны идти к поставленной цели.
Итак, создадим один класс с именем FirstLevelViewController, который будет представлять первый уровень в нашей навигационной иерархии. В результате получим таблицу, которая будет содержать по одной строке для каждого табличного представления второго уровня. Каждое из этих табличных представлений второго уровня будет представлено классом SecondLevelViewContioller. Как это все работает, вы увидите, если продолжите чтение главы.
- Дата: 8-12-2014, 14:46