W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
多行文本輸入框組件,當輸入的文本內容超過組件寬度時會自動換行顯示。
高度未設置時,組件無默認高度,自適應內容高度。寬度未設置時,默認撐滿最大寬度。
該組件從API Version 7開始支持。后續(xù)版本如有新增內容,則采用上角標單獨標記該內容的起始版本。
TextArea(value?:{placeholder?: ResourceStr, text?: ResourceStr, controller?: TextAreaController})
參數(shù):
參數(shù)名 | 參數(shù)類型 | 必填 | 參數(shù)描述 |
---|---|---|---|
placeholder | 否 | 設置無輸入時的提示文本,輸入內容后,提示文本不顯示。 | |
text | 否 | 設置輸入框當前的文本內容。 設置輸入框當前的文本內容。當組件設置stateStyles等刷新屬性時,建議通過onChange事件將狀態(tài)變量與文本實時綁定,避免組件刷新時TextArea中的文本內容異常。 | |
controller8+ | 否 | 設置TextArea控制器。 |
除支持通用屬性外,還支持以下屬性:
名稱 | 參數(shù)類型 | 描述 |
---|---|---|
placeholderColor | 設置placeholder文本顏色。 | |
placeholderFont | 設置placeholder文本樣式,包括字體大小,字體粗細,字體族,字體風格。目前僅支持默認字體族。 | |
textAlign | 設置文本在輸入框中的水平對齊式。 默認值:TextAlign.Start | |
caretColor | 設置輸入框光標顏色。 | |
inputFilter8+ | { value: ResourceStr, error?: (value: string) => void } | 通過正則表達式設置輸入過濾器。匹配表達式的輸入允許顯示,不匹配的輸入將被過濾。僅支持單個字符匹配,不支持字符串匹配。 - value:設置正則表達式。 - error:正則匹配失敗時,返回被過濾的內容。 |
copyOption9+ | 設置輸入的文本是否可復制。 設置CopyOptions.None時,當前TextArea中的文字無法被復制或剪切,僅支持粘貼。 |
除支持通用事件外,還支持以下事件:
名稱 | 功能描述 |
---|---|
onChange(callback: (value: string) => void) | 輸入內容發(fā)生變化時,觸發(fā)該回調。 - value:當前輸入的文本內容。 |
onCopy8+(callback:(value: string) => void) | 長按輸入框內部區(qū)域彈出剪貼板后,點擊剪切板復制按鈕,觸發(fā)該回調。 - value:復制的文本內容。 |
onCut8+(callback:(value: string) => void) | 長按輸入框內部區(qū)域彈出剪貼板后,點擊剪切板剪切按鈕,觸發(fā)該回調。 - value:剪切的文本內容。 |
onPaste8+(callback:(value: string) => void) | 長按輸入框內部區(qū)域彈出剪貼板后,點擊剪切板粘貼按鈕,觸發(fā)該回調。 - value:粘貼的文本內容。 |
caretPosition(value: number): void
設置輸入光標的位置。
參數(shù):
參數(shù)名 | 參數(shù)類型 | 必填 | 參數(shù)描述 |
---|---|---|---|
value | number | 是 | 從字符串開始到光標所在位置的字符長度。 |
- // xxx.ets
- @Entry
- @Component
- struct TextAreaExample {
- @State text: string = ''
- controller: TextAreaController = new TextAreaController()
- build() {
- Column() {
- TextArea({
- placeholder: 'The text area can hold an unlimited amount of text. input your word...',
- controller: this.controller
- })
- .placeholderFont({ size: 16, weight: 400 })
- .width(336)
- .height(56)
- .margin(20)
- .fontSize(16)
- .fontColor('#182431')
- .backgroundColor('#FFFFFF')
- .onChange((value: string) => {
- this.text = value
- })
- Text(this.text)
- Button('Set caretPosition 1')
- .backgroundColor('#007DFF')
- .margin(15)
- .onClick(() => {
- // 設置光標位置到第一個字符后
- this.controller.caretPosition(1)
- })
- }.width('100%').height('100%').backgroundColor('#F1F3F5')
- }
- }
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: