今天在做項目時有一個這樣的場景,Android的ListView列表中的item裏有一個按鈕需要給他添加點擊事件。但是我們都知道根據事件的分發機制是因爲listview消費掉了事件,沒有向下傳遞了
後來查找資料得知在ListView列表中的item適配器佈局的最外層容器中可以設置一個這樣的值descendantFocusability 如下:
descendantFocusability 該屬性是當一個爲view獲取焦點時,定義viewGroup和其子控件兩者之間的關係。
屬性的值有三種:
beforeDescendants:viewgroup會優先其子類控件而獲取到焦點
afterDescendants:viewgroup只有當其子類控件不需要獲取焦點時才獲取焦點
blocksDescendants:viewgroup會覆蓋子類控件而直接獲得焦點