我有行布局的列表视图,如
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="match_parent"
android:orientation="horizontal"
android:weightSum="5"
>
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:id="@+id/ArriveTime"
android:gravity="center"
android:layout_weight="1" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:id="@+id/Name"
android:gravity="center"
android:layout_weight="1" />
<Button
android:focusable="false"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:id="@+id/Arrive"
android:gravity="center"
android:layout_weight="1"
android:text="Arrive" />
<Button
android:focusable="false"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:id="@+id/Encounter"
android:gravity="center"
android:layout_weight="1"
android:text="Encounter" />
<Button
android:focusable="false"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:id="@+id/Exit"
android:gravity="center"
android:layout_weight="1"
android:text="Exit" />
</LinearLayout>
我希望点击行时能够点击按钮,所以我设置android:focusable="false"
并点击我说
MainGrid.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
Log.d("zzzzzzzzzzzzzzzzzzzzzzzz",""+ oldPosition);
if(oldPosition != -1)
{
MainGrid.getChildAt(oldPosition).setFocusable(false);
//MainGrid.findViewById(oldPosition).setFocusable(false);
}
// Set the whole list view unfocusable
MainGrid.setFocusable(false);
// focus only on this
view.setFocusable(true);
oldPosition = position -1;
SetMenueOnClick(position-1) ;
}});
问题是,在第一次单击该行后,按钮处于活动状态,我无法再次单击它任何解决此问题的想法,我需要激活我单击的行上的按钮,然后将焦点转移到该行以进一步单击