版本記錄
版本號 | 時間 |
---|---|
V1.0 | 2018.08.30 |
前言
TextKit
框架是對Core Text
的封裝,用簡潔的調用方式實現了大部分Core Text
的功能。 TextKit是一個偏上層的開發框架,在iOS7
以上可用,使用它可以方便靈活處理復雜的文本布局,滿足開發中對文本布局的各種復雜需求。TextKit實際上是基于CoreText的一個上層框架,其是面向對象的。接下來幾篇我們就一起看一下這個框架。感興趣的看下面幾篇文章。
1. TextKit框架詳細解析 (一) —— 基本概覽和應用場景(一)
2. TextKit框架詳細解析 (二) —— 基本概覽和應用場景(二)
3. TextKit框架詳細解析 (三) —— 一個簡單布局示例(一)
4. TextKit框架詳細解析 (四) —— 一個簡單布局示例(二)
5. TextKit框架詳細解析 (五) —— 文本編程指南之簡介(一)
Displaying Text Content in iOS - 在iOS中展示文本內容
iOS中的文本系統提供了巨大的功能,同時仍然非常易于使用。 UIKit框架包括幾個用于管理文本顯示和輸入的高級類。 UIKit還包括一個用于顯示基于HTML
,CSS
和JavaScript
的Web內容的類。
Use Text Objects to Display Text Content - 使用文本對象顯示文本內容
文本對象以各種字體,樣式和大小顯示樣式化的格式化文本。 UIKit框架提供了三個主要類,用于在應用程序的用戶界面中顯示此文本內容:
-
UILabel
定義了一個標簽,它顯示一個靜態文本字符串。 -
UITextField
定義一個文本區域,顯示一行可編輯文本。 -
UITextView
定義了一個文本視圖,該視圖顯示多行可編輯文本。
雖然這些類實際上可以支持任意數量的文本的顯示,但標簽和文本區域旨在用于相對少量的文本,通常是單行。另一方面,文本視圖旨在顯示大量文本。
從UITextView類創建的文本視圖對象顯示格式化為段落,列和頁面的文本,具有精細排版的所有特征,例如字距調整,連字,復雜的換行和對齊。這些排版服務通過名為Text Kit
的底層技術提供給UITextView
,這是一個易于使用和可擴展的強大布局引擎。有關Text Kit
的詳細信息,請參閱Using Text Kit to Draw and Manage Text。
圖1-1顯示了主要文本對象在屏幕上顯示的示例。左側的圖像顯示了幾種不同樣式的文本區域,而右側的圖像顯示了單個文本視圖。顯示在背景上的標注是嵌入在用于顯示不同視圖的table cell
內的UILabel
對象。 (這些示例來自UIKit Catalog (iOS): Creating and Customizing UIKit Controls應用程序,它演示了UIKit中可用的許多視圖和控件。)
使用可編輯的text fields 和 text views,應始終提供代理對象來管理編輯會話。text views向委托發送幾個不同的通知,以便在編輯開始時,結束時讓他們知道,并讓他們有機會覆蓋某些編輯操作。例如,委托可以決定當前文本是否包含有效值,并阻止編輯會話結束(如果不包含)。當編輯最終結束時,您還可以使用委托來獲取結果文本值并更新應用程序的數據模型。
由于它們的預期用法存在細微差別,因此每個text view的委托方法略有不同。支持UITextField類的委托實現UITextFieldDelegate
協議的方法。類似地,支持UITextView類的委托實現UITextViewDelegate
協議的方法。在這兩種情況下,您都不需要實現任何協議方法,但如果不這樣做,則text fields 和 text views不那么有用。
Managing Text Fields and Text Views描述了text fields
和 text views
的代理消息序列,并討論了這些對象的委托執行的各種任務。有關UITextFieldDelegate
和UITextViewDelegate
協議的方法的更多信息,請參閱UITextFieldDelegate Protocol Reference和 UITextViewDelegate Protocol Reference。
Use Web Views to Display Web Content - 使用Web視圖顯示Web內容
Web視圖對象顯示基于Web的內容。它是WKWebView類的一個實例,使您能夠將微型Web瀏覽器的內容集成到應用程序的用戶界面中。WKWebView
類充分利用了在iOS中實現Safari的相同Web技術,包括對HTML
,CSS
和JavaScript
內容的完全支持。該類還支持用戶在Safari中熟悉的許多內置手勢。例如,您可以雙擊并捏合以放大和縮小頁面,您可以通過拖動手指在頁面上滾動。
除了顯示內容之外,您還可以使用Web視圖對象通過使用Web表單來收集用戶的輸入。與UIKit中的其他文本類一樣,如果您的網頁上有可編輯的text field,則點擊該字段會彈出一個鍵盤,以便用戶可以輸入文本。因為它是Web體驗中不可或缺的一部分,所以Web視圖本身可以為您管理鍵盤的顯示和移除。
Web視圖通過其關聯的委托對象提供有關何時加載頁面以及是否存在任何加載錯誤的信息。 Web委托是實現WKUIDelegate或WKNavigationDelegate協議的一個或多個方法的對象。您的代理方法實現可以響應失敗或執行與加載網頁相關的其他任務。
后記
本篇主要講述了文本編程指南之展示文本內容,感興趣的給個贊或者關注~~~