我创建从ArrayAdapter一个ListView。 ListView中的每一行有一个ImageView的和一个TextView。 现在我用setOnItemClickListener处理点击事件
lv = getListView();
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
CategoryInfo cat = (CategoryInfo) lv
.getItemAtPosition(position);
showGameByCategory(Long.valueOf(cat.getId()), cat.getName());
}
});
当我点击某一行上,它会启动另一项活动。 在这项活动,我有一个按钮,返回到ListView。 当单击该按钮,我会打电话给Activity.finish();
。
这里的问题:我第一次打开ListView和点击任何一个项目,它工作正常,并打开新的活动。 但是,当我点击按钮回来,回去的ListView,我无法点击任何项目。 我的应用程序有很多标签,如果我切换到另一个选项卡,然后切换回的ListView,我可以再次点击ListView项。 但只要我点击按钮回来,项目无法点击。
我测试的2个不同的操作系统,它通常适用于Android 2.3,但在Android 4.0出现此错误。
有谁知道如何解决这一问题?
编辑:这是我的布局文件:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
android:background="@drawable/listitem_selector_odd"
android:padding="6dip" >
<RelativeLayout
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:orientation="vertical" >
<ImageView
android:id="@+id/avatar"
android:layout_width="70dp"
android:layout_height="70dp"
android:layout_marginRight="6dip"
android:layout_alignParentLeft="true"/>
<TextView
android:id="@+id/toptext"
android:layout_width="wrap_content"
android:layout_height="fill_parent"
android:layout_toRightOf="@+id/avatar"
android:layout_marginRight="6dip"
android:layout_weight="1"
android:gravity="center_vertical"
android:textColor="#000000"
android:textSize="18dp"
android:textStyle="bold" >
</TextView>
<ImageView
android:id="@+id/arrow"
android:layout_width="10dip"
android:layout_height="15dip"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginLeft="6dip"
android:layout_weight="1"
android:gravity="center_vertical"
android:src="@drawable/arrow_icon" />
</RelativeLayout>
</LinearLayout>