Android ListView记住先前选择的项目

时间:2019-02-04 10:26:20

标签: android android-listview

我有一个ListView填充的String array。用户选择一项,它的背景颜色就会改变。现在,用户在移动设备中单击back button,然后返回到mainActivity,然后再次返回到listviewActivity。所选项目不再显示在listView中。

2 个答案:

答案 0 :(得分:0)

您可以使用SharedPreferences保存所选列表项的索引,然后在onCreate回调中将其取回。或者,您也可以使用Room persistence将索引存储到数据库并在onCreate回调中进行检索。

答案 1 :(得分:0)

您需要使用两个新项以及您在String[]中填充的字符串值将ArrayList更改为Listview

首先需要制作一个Bean类

class Data{

private String colourName;
private String colourCode;//int colourCode
private boolean ;

//make setter and getter methods
}

制作

List<Data> colourDataList =new  ArrayList<Data>();

List上方与Adapter一起使用,

boolean标志的值更新为true。

将Data Bean保存到Android中的任何存储中,例如

SQLite

SharedPresence

local File

接下来,当您将数据加载到同一适配器时,从本地数据库获取值并映射新数据并设置为ListView项,例如colourCodeboolean flag value (true)