Отображение текстового Содержания в iOS

Текстовая система в iOS обеспечивает огромную сумму питания все еще будучи очень простой использовать. Платформа UIKit включает несколько высокоуровневых классов для управления дисплеем и вводом текста. UIKit также включает класс для отображения HTML, CSS и основанного на JavaScript веб-контента.

Используйте текстовые объекты для отображения текстового содержания

Разработанный дисплей текстовых объектов, форматированный текст в диапазоне шрифтов, стилей и размеров. Платформа UIKit обеспечивает три основных класса для отображения этого текстового содержания в пользовательском интерфейсе приложения:

Несмотря на то, что эти классы фактически могут поддерживать дисплей произвольных сумм текста, метки и текстовые поля предназначаются, чтобы использоваться для относительно мелких сумм текста, обычно одна строка. Текстовые представления, с другой стороны, предназначаются для отображения больших сумм текста.

Текстовые объекты представления, создаваемые из UITextView класс, текст дисплея, отформатированный в абзацы, столбцы и страницы, со всеми характеристиками прекрасного набора, такими как кернинг, лигатуры, сложное повреждение строки и выравнивание. Эти типографские услуги предоставлены к UITextView через базовую технологию, названную текстовым Набором, мощный механизм расположения, который и прост в использовании и расширяем. Посмотрите Используя текстовый Набор, чтобы Составить и Управлять текстом для получения дополнительной информации о текстовом Наборе.

Рисунок 1-1 показывает примеры основных текстовых объектов, поскольку они появляются на экране. В то время как изображение справа показывает единственное текстовое представление, изображение слева показывает несколько различных стилей текстовых полей. Выноски, выведенные на экран на фоне, UILabel объекты, встроенные в ячейках таблицы раньше, выводили на экран различные взгляды. (Эти примеры были взяты от UICatalog: Создание и Настройка Средства управления UIKit (Obj-C и Swift) демонстрационное приложение, демонстрирующее многие представления и управляющее доступный в UIKit.)

  Текстовые классы рисунка 1-1 в приложении UICatalog
Text classes in the UICatalog application

При работе с доступными для редактирования текстовыми полями и текстовыми представлениями, необходимо всегда обеспечивать объект делегата управлять сеансом редактирования. Текстовые представления отправляют несколько различных уведомлений делегату для уведомления их, когда редактирование начинается, когда оно заканчивается, и дать им шанс переопределить некоторые действия редактирования. Например, делегат может решить, содержит ли текущий текст допустимое значение, и препятствуйте тому, чтобы сеанс редактирования закончился, если это не делает. Когда редактирование действительно наконец заканчивается, Вы также используете делегата, чтобы получить получающееся текстовое значение и обновить модель данных Вашего приложения.

Поскольку существуют незначительные различия в их намеченном использовании, методы делегата для каждого текстового представления немного отличаются. Делегат, поддерживающий UITextField класс реализует методы UITextFieldDelegate протокол. Точно так же делегат, поддерживающий UITextView класс реализует методы UITextViewDelegate протокол. В обоих случаях Вы не обязаны реализовывать любой из методов протокола, но если Вы не делаете, текстовое поле или представление не так полезны.

Управление Текстовыми полями и текстовыми Представлениями описывает последовательность сообщений делегации для обоих текстовых полей, и текст просматривает и обсуждает различные задачи, выполняемые делегатами этих объектов. Для получения дополнительной информации о методах UITextFieldDelegate и UITextViewDelegate протоколы, посмотрите Ссылку на протокол Ссылки на протокол и UITextViewDelegate UITextFieldDelegate.

Используйте веб-представления для отображения веб-контента

Веб-представление отображения объекта веб-содержание. Это - экземпляр UIWebView класс, позволяющий Вам интегрировать то, что является по существу миниатюрным веб-браузером в пользовательский интерфейс Вашего приложения. UIWebView класс полностью использует те же веб-технологии, используемые для реализации Safari в iOS, включая полную поддержку HTML, CSS и содержания JavaScript. Класс также поддерживает многие встроенные жесты, что пользователи знакомы с в Safari. Например, можно дважды щелкнуть и зажать для увеличивания масштаб и из страницы, и можно прокрутить вокруг страницы путем перетаскивания пальца.

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

Рисунок 1-2 показывает пример a UIWebView объект от UICatalog: Создание и Настройка Средства управления UIKit (Obj-C и Swift) демонстрационное приложение, демонстрирующее многие представления и управляющее доступный в UIKit. Поскольку это просто выводит на экран содержимое HTML, если Вы хотите, чтобы пользователь был в состоянии переместиться по страницам во многом как, они были бы в веб-браузере, необходимо добавить средства управления, чтобы сделать так.

Рисунок 1-2  веб-представление
A web view

Веб-представление предоставляет информацию о том, когда страницы загружаются, и были ли какие-либо ошибки загрузки через ее связанный объект делегата. Веб-делегат является объектом, реализующим один или несколько методов UIWebViewDelegate протокол. Ваши реализации методов делегата могут реагировать на отказы или выполнить другие задачи, связанные с загрузкой веб-страницы.

Отображение веб-контента описывает, как вывести на экран HTML и другое содержание в веб-представлении.