你好我有一个gridview点击问题
这是我的xml行代码,我将所有textview和imageview以及chexbox设置为android:clickable =“false”但是当我点击项目时,行动无效
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/laybackground"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/cadreaccesshadow"
android:orientation="vertical"
android:padding="5dp" >
<LinearLayout
android:layout_width="match_parent"
android:clickable="false"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/imageuser"
android:layout_width="65dp"
android:layout_height="65dp"
android:layout_marginBottom="10dp"
android:layout_marginLeft="4dp"
android:layout_marginRight="4dp"
android:clickable="false"
android:layout_marginTop="10dp"
android:src="@drawable/cadretransp" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginLeft="3dp"
android:layout_marginTop="3dp"
android:clickable="false"
android:orientation="vertical" >
<TextView
android:id="@+id/username"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="13dp"
android:textSize="12sp"
android:clickable="false"
android:textStyle="bold" />
<TextView
android:id="@+id/userjob"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="13dp"
android:clickable="false"
android:textSize="12sp" />
<TextView
android:id="@+id/usercompany"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="13dp"
android:clickable="false"
android:textSize="12sp" />
<CheckBox
android:id="@+id/usermail"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginRight="5dp"
android:background="#cfcfcf"
android:gravity="right|center_vertical"
android:paddingRight="4dp"
android:clickable="false"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
这是我的代码
gridView = (GridView) alertDialogView.findViewById(R.id.gridView1);
gridView.setOnItemClickListener(new OnItemClickListener()
{
@Override
public void onItemClick(AdapterView<?> arg0,
View arg1, int arg2, long arg3) {
// TODO Auto-generated method stub
System.out.println("kkkkkkkkk");
CheckBox checkBox = (CheckBox)arg1.findViewById(R.id.usermail);
checkBox.setChecked(!checkBox.isChecked());
gridArray.get(arg2).setetat(checkBox.isChecked());
customGridAdapter.notifyDataSetChanged();
}
});
我的问题是当我点击该项目时,你不能正常工作
有人可以帮助我
答案 0 :(得分:2)
试试这个
将android:descendantFocusability="blocksDescendants"
添加到您的LinearLayout
例如。
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/laybackground"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/cadreaccesshadow"
android:orientation="vertical"
android:padding="5dp"
android:descendantFocusability="blocksDescendants" >