这个问题被问了很多次,我系统地检查了每个问题,并试图找到哪个版本的performItemClick
作品。不幸的是,尽管调用了我的 onclick 方法,但我无法让它们中的任何一个工作。
我有一个嵌入到片段中的 5 个项目的列表视图。该片段由片段状态页面适配器和视图页面控制。我正在尝试恢复保存的状态。
lv.setAdapter(new SimpleAdapter(getActivity(), list,
R.layout.list_imageview, new String[] { "answer" },
new int[] { android.R.id.text1 }));
简单的适配器采用自定义布局,该布局在布局中具有 textview 和 imageview。最初,图像视图为空,单击时将其设置为勾号或十字。这在我自己单击项目时有效,但不能以编程方式工作,如下所示:
@Override
public void onViewStateRestored(Bundle savedInstanceState) {
super.onViewStateRestored(savedInstanceState);
if (savedInstanceState != null) {
for (int i = 0; i < 5; i++) {
lv.performItemClick(lv.getAdapter().getView(i, null, null),
i, i);
Log.e("restoring state", "" + i);
}
}
}
我可以确认onViewStateRestored
被称为onItemClick
也被称为。我认为这是我执行项目单击方式的问题。我目前只是想让它工作;我知道我尚未检查已单击哪些项目以选择性地单击它们,但这很容易boolean[]
。
我感谢您的帮助,对于这样一个重复了好几次的简单问题,我深表歉意;尽管阅读了它们,但我仍然无法让它们工作。