我正在尝试使用简单的适配器将 Sqlite 数据库的内容放入 ListView 中。 我正在使用 arraylist> 来获取所有值。它显示在 ListView 上,但每次我运行它时,这些值似乎都会重复。 我应该怎么办? 这是我的代码
ArrayList<HashMap<String, String>>val=new ArrayList<HashMap<String,String>>();
Databasehandler db=new Databasehandler(this);
private ListView lv;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.contacts);
val=db.getAllContacts();
final ListView lv=(ListView)findViewById(R.id.listView1);
if(val.size()!=0)
{
ListAdapter ad=new SimpleAdapter(Contact.this,val,R.layout.v,new String[]{"contacts"},new int[]{R.id.textView2});
lv.setAdapter(ad);
}
最佳答案
只需在 onCreate 方法之前声明 ArrayList,例如...
ArrayList<HashMap<String, String>>val = null;
当你想将检索到的值放入 ArrayList 时,初始化这个 ArrayList ...
val=new ArrayList<HashMap<String,String>>();
关于android - Arraylist<hashmap<>> 值在 ListView 中重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21670271/