View и viewcontroller

Я новый разработчик приложений iphone. Я хочу знать, в чем разница между view и viewcontroller.

Ответы

Ответ 1

UIView

Класс UIView определяет прямоугольную область на экране и интерфейсы для управления контентом в этой области. Во время выполнения объект представления обрабатывает рендеринг любого контента в его районе а также обрабатывает любые взаимодействия с это содержание. Сам класс UIView обеспечивает базовое поведение для заполнения его прямоугольная область с фоном цвет. Более сложный контент может представлять подклассы UIView и реализации необходимого чертежа и код обработки событий самостоятельно. Рамка UIKit также включает в себя набор стандартные подклассы, которые вы можете использовать, от простых кнопок до сложных столы. Например, объект UILabel рисует текстовую строку и UIImageView объект рисует изображение.

Поскольку ваше приложение взаимодействует с пользователем в основном через представление объекты, эти объекты имеют число ответственности. Вот только некоторые из них:

Рисование и анимация содержимого в прямоугольной области, используя такие технологии, как UIKit, Core Графики и OpenGL ES. Некоторая точка зрения свойства могут быть анимированы для новых значения. Управление макетами и подзаголовками Представление может содержать ноль или более подвиды. Каждое представление определяет поведение изменения размера по умолчанию в отношении к его родительскому представлению. Вид может вручную измените размер и положение его подсмотров по мере необходимости. Мероприятие Обращение является ответчиком и может обрабатывать события касания и другие события определяемый классом UIResponder. view можно использовать addGestureRecognizer: метод установки распознавателей жестов для обработки обычных жестов.

UIViewController

Класс UIViewController обеспечивает основная модель управления представлением для приложений iPhone. Основа класс контроллера класса поддерживает представление связанного представления, поддержка управления модальными представлениями и поддержка поворота взглядов в ответ к изменениям ориентации устройства. Подклассы, такие как UINavigationController и UITabBarController предоставляет дополнительные поведение для управления сложным иерархии диспетчеров представлений и просмотров.

Вы используете каждый экземпляр UIViewController для управления представлением иерархия. Типичная иерархия представлений состоит из корневого представления - ссылки на который доступен в представлении свойство этого класса - и обычно одно или более подсмотров, представляющих фактические содержание. На iPhone и iPod touch корневой вид обычно заполняет весь экран, но на iPad это представление может заполнить только часть экрана. В обоих случаев, контроллер вида ответственный за управление всей иерархию представлений, включая все подвиды.

Контроллеры просмотра тесно связаны с взгляды, которыми они управляют, и принимают участие в цепь респондентов, используемая для обработки Мероприятия. Контроллеры просмотра сами потомки Класс UIResponder и вставлены в цепочку ответчиков между управляемый корневой вид и его супервизор, который обычно принадлежит к другому просмотрите контроллер. Если вид просмотр контроллеров не обрабатывает события, сам контроллер представления возможность обработки события перед передачей события SuperView.

Класс UIViewController работает с окно приложений для обработки изменения ориентации устройства. Если контроллер просмотра поддерживает новый ориентации (как определено возвращаемое значение shouldAutorotateToInterfaceOrientation: метод), он оживляет переход от текущей ориентации до новый. В рамках этого изменения также применяет любые правила изменения размера в эффект для взглядов в его представлении иерархия. Если вы хотите внести изменения к вашей иерархии взглядов как части изменение ориентации, вы можете переопределить методов UIViewController для внесите изменения. Для информацию о методах, необходимых для переопределить, см. "Вид обработки" Обороты ".

Контроллеры просмотра имеют фундаментальное значение для дизайн большинства iPhone Приложения. Последующие разделы предоставить основную информацию об использовании методы и свойства Класс UIViewController. Для дополнительных информация об использовании вида контроллеров для создания и управления приложений, см. View Руководство по программированию контроллера для iOS.

Ответ 3

ViewController - Основной экран

View - компонент, который можно добавить в ViewController

Ответ 4

Вы знакомы с шаблоном Model-View-Controller? Прежде чем начать разработку iPhone, вы должны быть знакомы с ним. Я рекомендую книгу Cocoa Шаблоны проектирования. Поверьте мне, это поможет много в долгосрочной перспективе.