Android 自定义 View 中 onKeyDown监听 没反应
在網(wǎng)上找了些資料終于明白了:
原來(lái)是焦點(diǎn)問(wèn)題,我們注意View中有監(jiān)聽(tīng)事件,Activity也有監(jiān)聽(tīng)事件,兩個(gè)類(lèi)的監(jiān)聽(tīng)事件有些是相同 的,想想其實(shí)原因很簡(jiǎn)單,如果在Activity用View畫(huà)圖,你在View里添加監(jiān)聽(tīng)事件,在Activity里面也添加相同監(jiān)聽(tīng)事情的話,例如都添加onKeyDown事件,這樣當(dāng)你按下某個(gè)鍵的時(shí)候,系統(tǒng) 就不知道你需要調(diào)用哪個(gè)方法了,不知道用哪個(gè)監(jiān)聽(tīng) 了,所以這就關(guān)系到焦點(diǎn)問(wèn)題,誰(shuí)擁有焦點(diǎn),就調(diào)用誰(shuí)的監(jiān)聽(tīng)事件。
我們程序在運(yùn)行的時(shí)候默認(rèn)焦點(diǎn)是在Activity上,所以就會(huì)造成View里面的onKeyDown監(jiān)聽(tīng)事件無(wú)效,所以只要在畫(huà)圖的時(shí)候,添加焦點(diǎn)就可以 了,如:
[java]?view plaincopy
?
轉(zhuǎn)載于:https://www.cnblogs.com/zsw-1993/archive/2013/04/07/4880221.html
總結(jié)
以上是生活随笔為你收集整理的Android 自定义 View 中 onKeyDown监听 没反应的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 在source insight 中添加系
- 下一篇: JS管理作用域