自定义列表视图保存所选项目位置

时间:2017-12-23 16:15:05

标签: android listview adapter android-arrayadapter

我创建了一个自定义列表视图。

我想使用其他按钮点击或某些视图点击选择任何项目。

我已经尝试通过这些代码进行自定义选择。

我还希望在简历上获得之前选择的项目。

listView.setItemChecked(2,true);
listView.setSelection(2);
listView.requestFocus();

但每次都失败了。

我使用此方法创建自定义列表视图。

Android ListView with Custom Adapter Example Tutorial

提前谢谢。

1 个答案:

答案 0 :(得分:0)

要使setItemChecked生效,您的列表项必须为Checkable;例如,您可以使用CheckedTextView(在项目视图的顶层,周围没有进一步的布局)。

要使setSelection生效,您需要在Runnable内使用它,如下所示:

listView.post(new Runnable() {
    @Override
    public void run() {
        listView.setSelection(2);
    }
});

在这两种情况下,不要问为什么。

要使选项变为可见,您可以将状态列表放在列表项的背景属性中。