Описание тега uiview
Класс UIView определяет прямоугольную область на экране и интерфейсы для управления контентом в этой области. Во время выполнения объект представления обрабатывает рендеринг любого содержимого в своей области, а также обрабатывает любые взаимодействия с этим содержимым. Сам класс UIView обеспечивает базовое поведение для заполнения своей прямоугольной области цветом фона. Более сложный контент может быть представлен путем создания подкласса UIView и самостоятельной реализации необходимого кода рисования и обработки событий. Платформа UIKit также включает набор стандартных подклассов, которые варьируются от простых кнопок до сложных таблиц и могут использоваться как есть. Например, объект UILabel рисует текстовую строку, а объект UIImageView рисует изображение.
Поскольку объекты представления являются основным способом взаимодействия вашего приложения с пользователем, у них есть ряд обязанностей. Здесь только несколько:
Рисование и анимация
Представления рисуют контент в своей прямоугольной области с использованием таких технологий, как UIKit, Core Graphics и OpenGL ES.
Некоторые свойства представления можно анимировать для получения новых значений.
Управление макетом и подвидом
Представление может содержать ноль или более вложенных представлений.
Каждое представление определяет собственное поведение изменения размера по умолчанию относительно своего родительского представления.
Представление может определять размер и положение своих подвидов по мере необходимости.
Обработка событий
- Представление является респондентом и может обрабатывать события касания и другие события, определенные классом UIResponder.
- Представления могут использовать метод addGestureRecognizer: для установки распознавателей жестов для обработки обычных жестов.
Представления могут встраивать другие представления и создавать сложные визуальные иерархии. Это создает родительско-дочерние отношения между встраиваемым представлением (известным как подпредставление) и родительским представлением, выполняющим внедрение (известное как супервизор). Обычно видимая область вложенного представления не обрезается до границ его суперпредставления, но в iOS вы можете использовать свойство clipsToBounds, чтобы изменить это поведение. Родительское представление может содержать любое количество вложенных представлений, но каждое вложенное представление имеет только одно суперпредставление, которое отвечает за правильное размещение своих вложенных представлений.
Геометрия вида определяется его рамкой, границами и свойствами центра. Фрейм определяет начало координат и размеры вида в системе координат его супервизора и обычно используется во время компоновки для настройки размера или положения вида. Свойство center можно использовать для регулировки положения представления без изменения его размера. Границы определяют внутренние размеры вида, как они видны, и используются почти исключительно в пользовательском коде рисования. Размерная часть прямоугольников рамки и границ соединяется вместе, так что изменение размера любого прямоугольника обновляет размер обоих.
Для получения подробной информации о том, как использовать класс UIView, см. Руководство по программированию для iOS.
Создание представления
Чтобы создать представление программным способом, вы можете использовать следующий код:
CGRect viewRect = CGRectMake(10, 10, 100, 100);
UIView* myView = [[UIView alloc] initWithFrame:viewRect];
Эквивалент в Swift:
let viewRect = CGRectMake(10, 10, 100, 100)
let myView = UIView(frame: viewRect)