UI元件_UITextView
讓使用者輸入多行文字的 UITextView
Published in
Nov 30, 2021
UITextView: 編輯多行文字
當使用者點擊一個Text View時會跳出一個鍵盤; 當使用者點擊鍵盤上的Return鍵,鍵盤會消失且Text View會以應用程式獨特的方式應對輸入的文字。你可以調整Text View中的所有內容的屬性如字體、顏色,及對齊等。
相關屬性介紹
- Editable:可編輯TextView內容
- Selectable:可選取TextView內容
- Data Detectors:將文字變連結
- Scroll View>Keyboard : 滾動TableView時的鍵盤設定
- Text Input Traits:可參考關於Text Field的介紹
1. Editable & Selectable
- 只勾選Editable:因爲沒勾選Selectable,所以無法選取的前提下就無法編輯,也無法反白或複製文字
- 只勾選Selectable:可反白或複製文字,無法編輯文字
- 勾選 Editable&Selectable:可編輯、反白或複製文字
2. Data Detectors
要做到把文字變連結的效果,需要先取消勾選Editable、勾選Selectable
- Phone Number
- Link
- Adress
也可將圖片變成連結,方式如連結
3. Scroll View> Keyboard
當滾動Text View畫面時,鍵盤會怎麼與使用者互動呢?
- Do not Dismiss :滾動畫面時,鍵盤不會消失
- Dismiss on Drag:滾動畫面時,鍵盤會消失
- Dismiss interactively:滾動畫面時出現鍵盤,並可手動隱藏鍵盤
TextView 和 Label 的異同
Label的介紹文章如下
相同點:
- 可涵蓋多行內容
- TextView在[未勾選Editable & Selectable]或[只勾選Editable]時,功能類似Label,但View仍可捲動 (圖1);
如把Scrolling相關屬性(scrolling enabled)取消勾選,則功能與Label完全相同:文字內容僅供展示,無法反白或複製。
不同點:
- TextView內容可事先設定,也可由使用者輸入;Label的內容需事先設定
- TextView在輸入的內容量大於View範圍時,可設定Scroll View屬性讓文字自動換行,View側邊有滑軌可以往下滾動確認完整內容;
Label 需設定Lines和Auto shrink屬性來調整文字顯示範圍。 (圖1)