android app에서 어댑터가 만든 TextView를 보유한 GridView가 있습니다. 그 TextView에서 나는 세 가지 상태 (누르기, 선택 및 기본값)가있는 아이콘을 추가합니다. android:listSelector="#00000000"
으로 GridView의 기본 선택기를 제거 했으므로 대신 아이콘의 선택된 상태를 표시하고 싶습니다. 그러나 눌려진 상태가 작동하더라도 (예 : TextView를 누르면 눌려진 아이콘이 표시됨) 선택되지 않습니다.GridView 하위에 포커스가 표시되지 않습니다.
나는 (웹에 다른 장소에서 발견) 그 트릭을 시도했지만 그것은 작동 중 하나를하지 않았다 :
이
android:descendantFocusability="afterDescendants"
또는
android:drawSelectorOnTop="true"
설정
또는 (텍스트 뷰에서)
android:duplicateParentState="true" />
내가 포커스가되도록 텍스트 뷰를 설정하면, 그것은의 GridView 독립적으로 포커스를 취득 (즉, 그것을 클릭하면의 GridView 온 클릭 메소드를 호출하지 않습니다 ...)
이 아이콘은
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true"
android:state_pressed="true"
android:drawable="@drawable/ic_flag_bg_pressed"/>
<item android:state_focused="false"
android:state_pressed="true"
android:drawable="@drawable/ic_flag_bg_pressed"/>
<item android:state_focused="true"
android:drawable="@drawable/ic_flag_bg_selected"/>
<item android:state_focused="false"
android:state_pressed="false"
android:drawable="@drawable/ic_flag_bg_default"/>
</selector>
자식에 초점을 맞춘 상태를 전달하는의 GridView를 알 수있는 방법이 있나요 :이 같은 XML 파일에 정의?