国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android 中ListView的Item點擊事件失效的快速解決方法

2019-12-12 05:16:11
字體:
來源:轉載
供稿:網友

在平常的開發過程中,我們的ListView可能不只是簡單的顯示下文本或者按鈕,更多的是顯示復雜的布局,這樣的話,我們就得自己寫布局和自定義adapter了,一般是繼承于BaseAdapter,示例代碼見下方。寫ListView的點擊事件時OnItemClickListener,onItemClick方法沒有執行,導致ListView中Item條目點擊事件失效,而Item中的View點擊事件可以在getView方法中進行處理。導致整個Item點擊失效的原因多半是由于在【你自己定義的Item中存在諸如ImageButton,Button,CheckBox等子控件(也可以說是Button或者Checkable的子類控件)】,此時這些子控件會將焦點獲取到,所以常常當點擊item時變化的是子控件,item本身的點擊沒有響應。

這時候就可以使用descendantFocusability來解決,其中descendantFocusability對應的屬性有3個

該屬性是當一個為view獲取焦點時,定義viewGroup和其子控件兩者之間的關系。

屬性的值有三種:

beforeDescendants:viewgroup會優先其子類控件而獲取到焦點

afterDescendants:viewgroup只有當其子類控件不需要獲取焦點時才獲取焦點

blocksDescendants:viewgroup會覆蓋子類控件而直接獲得焦點

通常我們用到的是第三種,即在Item布局的根布局加上android:descendantFocusability=”blocksDescendants”的屬性就好了
我遇到的情況時item布局有一個ImageButton按鈕,因為這個組件搶事件能力強,根button差不多;因此運行后,listviewitem點擊失效。使用上邊方式解決問題;當然也可以改變imagebutton為imageview也可以解決這個問題。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 桑植县| 安塞县| 泰来县| 英山县| 马公市| 泽普县| 青河县| 仪陇县| 平塘县| 班玛县| 界首市| 长丰县| 武平县| 南陵县| 阳泉市| 潞城市| 雅江县| 获嘉县| 武川县| 正宁县| 菏泽市| 托里县| 栖霞市| 凤山县| 凌源市| 项城市| 卢氏县| 油尖旺区| 红河县| 安多县| 虞城县| 湖州市| 多伦县| 黎平县| 贵南县| 南阳市| 巫溪县| 铁岭县| 张北县| 峨山| 彩票|