在Android中,可以使用Adapter的notifyDataSetChanged()
方法來刷新ListView的數(shù)據(jù)。具體步驟如下:
創(chuàng)建一個Adapter對象并設(shè)置給ListView,這個Adapter是用來控制ListView的數(shù)據(jù)源。
當需要刷新數(shù)據(jù)時,更新Adapter的數(shù)據(jù)源。
調(diào)用Adapter的notifyDataSetChanged()
方法來通知ListView刷新數(shù)據(jù)。
下面是一個示例代碼:
// 定義一個Adapter類繼承BaseAdapter
public class MyAdapter extends BaseAdapter {
private List<String> mData;
public MyAdapter(List<String> data) {
mData = data;
}
// 實現(xiàn)必要的方法
// ...
// 更新數(shù)據(jù)源
public void updateData(List<String> data) {
mData = data;
}
}
// 在Activity中使用ListView
public class MainActivity extends AppCompatActivity {
private ListView mListView;
private MyAdapter mAdapter;
private List<String> mData;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 初始化數(shù)據(jù)源
mData = new ArrayList<>();
// 初始化Adapter
mAdapter = new MyAdapter(mData);
// 初始化ListView
mListView = findViewById(R.id.list_view);
mListView.setAdapter(mAdapter);
// 刷新數(shù)據(jù)
refreshData();
}
private void refreshData() {
// 更新數(shù)據(jù)源
mData.clear();
mData.add("Item 1");
mData.add("Item 2");
mData.add("Item 3");
// 通知Adapter刷新數(shù)據(jù)
mAdapter.updateData(mData);
mAdapter.notifyDataSetChanged();
}
}
在示例代碼中,當調(diào)用refreshData()
方法時,會更新數(shù)據(jù)源并通知Adapter刷新數(shù)據(jù),然后ListView就會顯示更新后的數(shù)據(jù)。