15
當我與裏面的一些其他LinearLayouts一個LinearLayout中。兒童佈局具有背景選擇器集。當我按下一個孩子時,我需要更改父佈局的顏色。我也爲父級設置了背景選擇器,但只有在任何子級以外點擊時纔會觸發。安卓:讓家長選擇觸發選擇孩子
我該如何避免這種情況?
謝謝!
當我與裏面的一些其他LinearLayouts一個LinearLayout中。兒童佈局具有背景選擇器集。當我按下一個孩子時,我需要更改父佈局的顏色。我也爲父級設置了背景選擇器,但只有在任何子級以外點擊時纔會觸發。安卓:讓家長選擇觸發選擇孩子
我該如何避免這種情況?
謝謝!
嘗試添加此佈局屬性父的LinearLayout:
android:addStatesFromChildren="true"
另外,在代碼中調用:
parentLayout.setAddStatesFromChildren(true);
在這兩種情況下,要確保孩子的佈局做不設置了android:duplicateParentState
屬性(並且不要調用setDuplicateParentState(true)
),否則當系統檢測到循環依賴關係時,您將在運行時收到異常。
你會如何做相反:接觸容器,當觸發孩子的選擇? –
@androiddeveloper - 你可以在孩子中使用'android:duplicateParentState'。然後,孩子將使用其父母可繪製狀態而不是自己的狀態。然後父母必須是可點擊的,可選擇的,或任何你需要孩子的東西。 –
我明白了。是否可以將選擇器設置在頂部?另外,是否有不同的解決方案listView項目(其中每個項目是一個佈局與我寫在這裏的視圖)? –