當前位置:編程學習大全網 - 編程語言 - 在iOS中顯示文本內容 <- iOS文本編程指南

在iOS中顯示文本內容 <- iOS文本編程指南

在iOS中的文本系統在保持易用性的同時提供大量強大的功能。UIKit框架包括了多個高級類來管理文本的顯示和輸入。UIKit還包括了用於顯示HTML、CSS、以及基於JavaScript的web內容的類。

文本對象在壹定範圍的字體、樣式、和尺寸中,顯示樣式化、格式化的文本。UIKit框架提供三種主要的類來在app的用戶界面中顯示文本內容:

盡管這些類確實能支持顯示任意數量的文本,但是標簽和文本字段還是經常被用於顯示相關的少量文本,通常是壹個單獨行。另壹方面,文本視圖用來顯示大量的文本。

文本視圖對象,由UITextView類創建,顯示格式化為段落、列、以及頁的文本,具有精細排版的所有特征,例如字距、連字、復雜的換行、以及對齊。這些排版服務通過被稱為Text Kit的底層技術(壹種強大的布局引擎,易用且可擴展)提供給UITextView。更多關於Text Kit的信息,參見“使用Text Kit來繪制和管理文本”。

圖1-1 顯示了壹個在屏幕上顯示主要文本對象的例子。左圖顯示多種不同的文本字段樣式,右圖顯示壹個單獨的文本視圖。顯示在背景上的是鑲嵌在表單元格中的UILabel對象,用於顯示不同視圖。

圖 1-1 在UICatalog應用中的文本類

當使用可編輯的文本字段和文本視圖時,妳應該始終提供委托對象來管理編輯會話。文本視圖發送多中不同的通知給委托,以便讓它們知道編輯何時開始、何時結束、以及給它們壹個機會來重寫壹些編輯行為。例如,委托可以判斷當前文本是否包含有效值,如果沒有,組織編輯會話結束。當編輯最終結束時,妳還可以使用委托來得到文本值結果,並更新應用的數據模型。

因為在用途上細微差別,所以每個文本視圖的委托方法也有細微差別。支持UITextField類的位委托實現UITextFieldDelegate協議的方法。類似的,支持UITextView類的委托實現UITextViewDelegate協議的方法。兩種情況下,妳並不壹定要實現任何協議方法,但是,如果妳不實現,文本字段或視圖沒有什麽用處。

“管理文本字段和文本視圖”描述了文本字段和文本視圖的委托消息的順序,並討論了通過這些對象的委托方法執行的個中任務。更多關於UITextFieldDelegate和UITextViewDelegate協議方法的消息,參見UITextFieldDelegate Protocol Reference 和 UITextViewDelegate Protocol Reference。

壹個web視圖對象顯示基於web的內容。它是WKWebView的實例,它允許妳將基本上是小型瀏覽器整合到app的用戶界面中。WKWebView類充分利用了和iOS中的Safari中壹樣的技術,包括完全支持HTML、CSS、以及JavaScript內容。該類還支持很多用戶熟知的Safari的內置手勢。例如。妳可以雙擊和捏合來縮放頁面,以及妳可以通過用手指拖拽來滾動頁面。

除了顯示內容,妳還可以使用web 視圖對象通過使用web表單收集用戶的輸入。就像其他UIKit中的文本類壹樣,如果妳在web頁面上的表單中有壹個可編輯的文本字段,點擊該字段就會出現鍵盤,以便用戶可以輸入文本。因為這是wb體驗的組成部分,web視圖自身來管理鍵盤的顯示和關閉。

壹個web視圖通過它的適當的委托對象,來提供關於頁面合適加載、以及是否有加載錯誤的信息。Web委托是實現壹個或多個WKUIDelegate或WKNavigationDelegate協議的方法的對象。妳的這些委托方法的實現,可以響應故障,或者執行其他與web頁面加載有關的任務。

  • 上一篇:編程技術水平太惡心了。
  • 下一篇:什麽是“DSL”(數字用戶環線)?
  • copyright 2024編程學習大全網