焦點(diǎn)事件
焦點(diǎn)事件指頁面焦點(diǎn)在可獲焦組件間移動(dòng)時(shí)觸發(fā)的事件,組件可使用焦點(diǎn)事件來處理相關(guān)邏輯。
說明:
開發(fā)前請(qǐng)熟悉鴻蒙開發(fā)指導(dǎo)文檔 :[gitee.com/li-shizhen-skin/harmony-os/blob/master/README.md
]
事件
名稱 | 支持冒泡 | 功能描述 |
---|---|---|
onFocus(event: () => void) | 否 | 當(dāng)前組件獲取焦點(diǎn)時(shí)觸發(fā)的回調(diào)。 |
onBlur(event:() => void) | 否 | 當(dāng)前組件失去焦點(diǎn)時(shí)觸發(fā)的回調(diào)。 |
示例
`HarmonyOS與OpenHarmony鴻蒙文檔籽料:mau123789是v直接拿`
// xxx.ets
@Entry
@Component
struct FocusEventExample {
@State oneButtonColor: string = '#FFC0CB'
@State twoButtonColor: string = '#87CEFA'
@State threeButtonColor: string = '#90EE90'
build() {
Column({ space: 20 }) {
// 通過外接鍵盤的上下鍵可以讓焦點(diǎn)在三個(gè)按鈕間移動(dòng),按鈕獲焦時(shí)顏色變化,失焦時(shí)變回原背景色
Button('First Button')
.backgroundColor(this.oneButtonColor)
.width(260)
.height(70)
.fontColor(Color.Black)
.focusable(true)
.onFocus(() = > {
this.oneButtonColor = '#FF0000'
})
.onBlur(() = > {
this.oneButtonColor = '#FFC0CB'
})
Button('Second Button')
.backgroundColor(this.twoButtonColor)
.width(260)
.height(70)
.fontColor(Color.Black)
.focusable(true)
.onFocus(() = > {
this.twoButtonColor = '#FF0000'
})
.onBlur(() = > {
this.twoButtonColor = '#87CEFA'
})
Button('Third Button')
.backgroundColor(this.threeButtonColor)
.width(260)
.height(70)
.fontColor(Color.Black)
.focusable(true)
.onFocus(() = > {
this.threeButtonColor = '#FF0000'
})
.onBlur(() = > {
this.threeButtonColor = '#90EE90'
})
}.width('100%').margin({ top: 20 })
}
}
審核編輯 黃宇
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
鴻蒙
+關(guān)注
關(guān)注
57文章
2339瀏覽量
42805
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
鴻蒙ArkTS的起源和簡介
新的聲明式開發(fā)范式,基于Skia的自繪制引擎構(gòu)建可跨平臺(tái)的獨(dú)立的渲染能力。這是一種較為創(chuàng)新的方案,不過也有幾點(diǎn)不足:
Dart語言生態(tài)。盡管
發(fā)表于 01-16 16:23
HarmonyOS/OpenHarmony應(yīng)用開發(fā)-ArkTS的聲明式開發(fā)范式
基于ArkTS的聲明式開發(fā)范式的方舟開發(fā)框架是一套開發(fā)極簡、高性能、
發(fā)表于 01-17 15:09
鴻蒙開發(fā)之ArkTS基礎(chǔ)知識(shí)
一、ArkTS簡介 ArkTS是HarmonyOS優(yōu)選的主力應(yīng)用開發(fā)語言。它在TypeScript(簡稱TS)的基礎(chǔ)上,匹配了鴻蒙的ArkUI框架,擴(kuò)展了
鴻蒙ArkTS聲明式開發(fā):跨平臺(tái)支持列表【按鍵事件】
按鍵事件指組件與鍵盤、遙控器等按鍵設(shè)備交互時(shí)觸發(fā)的事件,適用于所有可獲焦組件,例如Button。對(duì)于Text,Image等默認(rèn)不可獲焦的組件,可以設(shè)置focusable屬性為true后使用按鍵事件。
鴻蒙ArkTS聲明式開發(fā):跨平臺(tái)支持列表【組件快捷鍵事件】
開發(fā)者可以設(shè)置組件的自定義組合鍵,組合鍵的行為與click行為一致,組件在未獲得焦點(diǎn)狀態(tài)下也可以響應(yīng)自定義組合鍵,每個(gè)組件可以設(shè)置多個(gè)組合鍵。
鴻蒙ArkTS聲明式開發(fā):跨平臺(tái)支持列表【顯隱控制】 通用屬性
控制當(dāng)前組件顯示或隱藏。注意,即使組件處于隱藏狀態(tài),在頁面刷新時(shí)仍存在重新創(chuàng)建過程,因此當(dāng)對(duì)性能有嚴(yán)格要求時(shí)建議使用[條件渲染]代替。 默認(rèn)值:Visibility.Visible 從API version 9開始,該接口支持在ArkTS卡片中使用。
鴻蒙ArkTS聲明式開發(fā):跨平臺(tái)支持列表【禁用控制】 通用屬性
組件是否可交互,可交互狀態(tài)下響應(yīng)[點(diǎn)擊事件]、[觸摸事件]、[拖拽事件]、[按鍵事件]、[焦點(diǎn)事件]和[鼠標(biāo)事件]。
鴻蒙ArkTS聲明式開發(fā):跨平臺(tái)支持列表【形狀裁剪】 通用屬性
參數(shù)為相應(yīng)類型的組件,按指定的形狀對(duì)當(dāng)前組件進(jìn)行裁剪;參數(shù)為boolean類型時(shí),設(shè)置是否按照父容器邊緣輪廓進(jìn)行裁剪。 默認(rèn)值:false 從API version 9開始,該接口支持在ArkTS卡片中使用。
鴻蒙ArkTS聲明式開發(fā):跨平臺(tái)支持列表【菜單控制】 通用屬性
為組件綁定彈出式菜單,彈出式菜單以垂直列表形式顯示菜單項(xiàng),可通過長按、點(diǎn)擊或鼠標(biāo)右鍵觸發(fā)。
鴻蒙ArkTS聲明式開發(fā):跨平臺(tái)支持列表【多態(tài)樣式】 通用屬性
設(shè)置組件不同狀態(tài)的樣式。 從API version 9開始,該接口支持在ArkTS卡片中使用。
鴻蒙ArkTS聲明式開發(fā):跨平臺(tái)支持列表【分布式遷移標(biāo)識(shí)】 通用屬性
組件的分布式遷移標(biāo)識(shí),指明了該組件在分布式遷移場(chǎng)景下可以將特定狀態(tài)恢復(fù)到對(duì)端設(shè)備。
鴻蒙ArkTS聲明式開發(fā):跨平臺(tái)支持列表 組合手勢(shì)
手勢(shì)識(shí)別組合,即多種手勢(shì)組合為復(fù)合手勢(shì),支持連續(xù)識(shí)別、并行識(shí)別和互斥識(shí)別。
評(píng)論