1

我有一个包含各种 TABS 的活动,其中一个有一个单选模式 ListView,它填充了一个 SimpleCursorAdapter。

Cursor c = db.listaPessoas(APRESENTACAO);
startManagingCursor(c);
SimpleCursorAdapter sca = new SimpleCursorAdapter(formPessoa.this,android.R.layout.select_dialog_singlechoice, c, new String[] {"nome"}, new int[] {android.R.id.text1});
pessoasInseridas.setAdapter(sca);
sca.notifyDataSetChanged();

问题是当我更改为另一个选项卡并返回具有 ListView 的选项卡时,不再选择 ListView 的选定项(绿色突出显示从单选按钮消失)。如何在 ListView 上保持项目的状态?

4

2 回答 2

1

试试这个

listView.setSelection(i);  // ex: i=5
于 2012-07-14T11:05:59.783 回答
1

发生这种情况是因为 android 不存储 listview 的状态来节省内存。当您在选项卡之间切换时,列表视图会“重新绘制”。您必须做的是更新数据库并刷新列表视图绑定的游标。这必须在列表视图中选中复选框后立即完成

于 2012-07-14T11:10:19.733 回答