작동합니다. GridView에 대한 포커스가 리모컨으로 변경되거나 항목을 클릭 할 때 다른 리스너가 호출되지 않습니다.어느 setOnItemSelectedListener도 setOnClickListener는의 GridView는 다음과 같다의 GridView
아무도 청취자를 작동시키는 방법에 대한 팁을 제공 할 수 있습니까?
GirdView의 다른 모든 기능이 예상대로 작동합니다.
편집 :
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="0dp"
android:layout_gravity="center"
android:id="@+id/biyee_relativeLayoutRoot">
<ImageButton
android:id="@+id/imageButton"
android:background="@drawable/button_background"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:contentDescription="snapshot"
android:layout_gravity="center"
android:scaleType="fitXY"
android:adjustViewBounds="true"
android:layout_margin="0dp"
android:padding="10dp"
android:src="@drawable/ic_launcher"
android:onClick="onClick_imageButton"/>
<LinearLayout
android:id="@+id/linearLayoutCaption"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/black_overlay"
android:orientation="vertical"
android:layout_margin="10dp"
android:padding="5dp">
<TextView
android:id="@+id/textViewName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="top"
android:text="Name"
android:textAppearance="?android:attr/textAppearanceSmall" />
<TextView
android:id="@+id/textViewModel"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Model"
android:textAppearance="?android:attr/textAppearanceSmall"/>
<TextView
android:id="@+id/textViewTime"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:text="Time"
android:textAppearance="?android:attr/textAppearanceSmall" />
</LinearLayout>
<TextView
android:id="@+id/textViewPosition"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:text="n"
android:textAppearance="?android:attr/textAppearanceSmall"
android:layout_margin="15dp"/>
</FrameLayout>
편집 (2) : 다음은 각 격자 셀에 대한 레이아웃 다니엘 누젠트의 the tip 당 , 나는에 대한 사용자 정의 항목보기 레이아웃에서하여 ImageButton을 제거 테스트 목적 및 OnItemSelectedListener가 완벽하게 작동하기 시작했습니다. 따라서 범인은 ImageButton입니다. 클릭 가능한 객체가 OnItemSelectedListener를 망칠 것으로 보입니다.
편집 (3) : 시험을 위해서, 나는 사용자 정의 항목보기에 대해 다음과 같은 레이아웃을 사용 :
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="300dp"
android:layout_height="300dp"
android:orientation="vertical"
android:background="@color/red">
</LinearLayout>
완벽하게 작동 OnItemSelectedListener하지만, OnClickListener를하고 OnItemClickListener 내가 여부에 상관없이 호출되지 않습니다 마우스 또는 리모컨을 사용하여 항목을 클릭하십시오. 당신이 화살표 또는 다른 것 같은 선택의 어떤 종류를 구현하는 경우
'onItemSelectedListener()'대신'onItemClickListener()'가 필요하다고 생각합니다. – Opiatefuchs
불행하게도 GridView에는 setOnItemClickedListener가 없습니다. AdapterView.onItemSelectedListener는 없습니다. – Hong
GridView에는 onItemClickListener()가 없습니다. API가 속지 는가? https://developer.android.com/guide/topics/ui/layout/gridview.html – Opiatefuchs