我想从另一个调用活动比较列表视图适配器插入记录后sqllite分贝。
我不能调用adapter.notifyDataSetChanged()方法。 什么是做到这一点的最好办法。
public void onClick(View v) {
TextView item_name;
item_name=(TextView) findViewById(R.id.eItemName);
Log.d("Insert: ", "Inserting ..");
db.add_item(new Item(item_name.getText().toString()), getApplicationContext());
// I want to call the method HERE!!!!
finish();
}
只是
后finish()
当前活动,呼叫adapter.notifyDataSetChanged()
从onActivityResult()
在以前的活动(如我假设你的列表视图在此之前的活动)。
使用从以前的活动也开始你当前活动startActivityForResult();
或者,如果你有这个活动列表适配器的参考,然后使用该引用调用adapter.notifyDataSetChanged()
(但我认为它不是一个好的做法)
更好的选择将被重新加载你ListView
里面新数据onResume()
你的活动,你有ListView控件。 有没有需要调用notifyDataSetChanged()
从另一个类,你没有你的列表中看到您的另一活动。
@Override
protected void onResume() {
super.onResume();
//fill your Collection with new data
// setAdapter or notify your adapter
}
文章来源: How to call ListView adapter from another activity for refresh - notifyDataSetChanged()