문제가 있습니다. ContextualActionBar를 여는 MULTI_CHOICE 수신기가있는 ListView가 있습니다. 이 목록의 각 항목에 대해 저는 루트 레이아웃에서 backround를 설정했습니다. 이것은 XML입니다 :Android CAB listview state_selected 및 state_pressed
<item android:drawable="@color/light_blue_alpha"
android:state_activated="true"/>
<item android:drawable="@color/light_blue"
android:state_pressed="true"/>
<item android:drawable="@drawable/card_background"/>
이 경우 기본 배경은 카드 레이아웃 (기본적으로 흰색)입니다. 항목을 누르면 배경이 전체 밝은 파란색으로 표시됩니다. 활성화되면 (CAB 선택을 통해) 배경은 0.5 알파의 옅은 파란색입니다.
이것은 무엇입니까 : 나는 CAB을 시작합니다. CAB 중에 새 항목을 선택하면 항목이 배경을 light_blue
(눌렀을 때)으로 변경합니다. 손가락을 떼면 기본 배경이 card_background
으로 바뀝니다. 몇 밀리 초 후에 활성화되어 다시 light_blue_alpha
으로 변경됩니다.
그래서 기본적으로 이런 종류의 청백색이 깜박입니다. 내가 성취하고자하는 것은 흰색 배경 거래를 "제거"하는 것입니다. 예를 들어 Gmail 앱이 내가하고 싶은 일을 정확히 수행하는 것을 볼 수 있습니다.
어떻게 달성 할 수 있습니까? 고맙습니다!!
편집 : 나는 루트 listSelector로 모든 것을 옮겨 보았습니다. 이것은 셀렉터입니다.
<item android:state_pressed="true" android:drawable="@color/light_blue"/>
<item android:state_activated="true" android:drawable="@color/light_blue_alpha"/>
<item android:drawable="@android:color/transparent"/>
또한 true로 설정하고 누른 배경이 올바르게 적용됩니다. 그러나 state_activated하지 않습니다! CAB을 시작하면 항목이 기본 배경으로 돌아갑니다. 왜 state_activated 배경을 사용하지 않습니까 ??
'무슨 일이 일어나고있는가'와 '무엇을 원하는가?'라고 붙일 수 있니? :) – Gattsu
맞아. 하지만 난 그걸 할 수있어. 문제는 아이템에서 손가락을 떼면 항목이 기본 배경으로 돌아가고 몇 밀리 초 후에 활성화되어 활성화 된 배경으로 이동한다는 것입니다. 손가락 해제 효과를 비활성화하거나 숨기려고합니다. 항목이 눌러 진 배경에서 활성화 된 배경으로 가야합니다. 직접 – edoardotognoni