0
我有3項ExpandableList,每個項目有不同的屬性,如背景顏色,圖像,不同的項目...更改背景顏色在ExpandableList的兒童在滾動
我想改變顏色當我點擊它時子項目。當我不滾動時,我可以更改顏色,因爲我在視圖中保存了一個標籤。但是當我滾動並點擊其他孩子時,問題就出現了。所選的最後一個孩子不會更改顏色背景。
expandableList.setOnClickListener(new OnChildClickListener(){
...
View view =(View)parent.getTag();
//Change last view colour
view.setBackgroundResourece(R.drawable.background_noselect);
...
parent.setTag(v);
}
在適配器:
getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent){
...
if(isSelect()){
convertView.setBackgroundResource(R.drawable.background_select);
}
}
「我可以改變顏色,當我不因爲我在視圖中保存了標籤,但是當我滾動並點擊其他孩子時,問題就出現了。「 - 這是什麼意思?請你可以解釋一下 –
目標是我有一個可擴展列表,當我點擊一個元素時,我改變背景的顏色(例如紅色),之後,我點擊另一個元素,然後改變背景的顏色(例如紅色)並且我改變了我點擊的第一個元素的顏色(例如藍色)。我可以在不滾動列表的情況下執行這些操作,但是當我滾動列表時,我可以更改單擊的第一個元素的顏色。 – MARM
你是什麼意思:「我可以在不滾動列表的情況下做這些事情」你的意思是你可以做到這一點,而不需要在ScrollView中封裝XML?或者你可以做到這一點,但當它在滾動它的過程中不起作用?或者你的意思是別的嗎? –