getview()中的android刷新列表视图适配器
我在adapter类中有一个自定义列表视图适配器和一个图像按钮。当我点击图像按钮时,监听器应该重新加载列表视图。我需要在适配器类的getview()中重新加载列表视图。因此,除了在listActivity类中使用notifyDataSetChanged()之外,我还需要知道其他选项getview()中的android刷新列表视图适配器,android,android-listview,listadapter,Android,Android Listview,Listadapter,我在adapter类中有一个自定义列表视图适配器和一个图像按钮。当我点击图像按钮时,监听器应该重新加载列表视图。我需要在适配器类的getview()中重新加载列表视图。因此,除了在listActivity类中使用notifyDataSetChanged()之外,我还需要知道其他选项 谢谢如果getView()中加载了一行,您想刷新listview中的一个单元格,还是想刷新整个listview 看看这个: 在活动中创建一个静态处理程序,该处理程序调用一个方法,该方法重新加载listview,并在需
谢谢如果getView()中加载了一行,您想刷新listview中的一个单元格,还是想刷新整个listview 看看这个:
在活动中创建一个静态处理程序,该处理程序调用一个方法,该方法重新加载listview,并在需要时从适配器向该处理程序发送消息
handler = new Handler() {
public void handleMessage(Message paramAnonymousMessage) {
switch (paramAnonymousMessage.what) {
case 1:
populateList();
break;
}
}
};
public void populateBill() {
MyBasketAdapter adapter = new MyBasketAdapter(this, basketList);
listView = (ListView) findViewById(android.R.id.list);
listView.setAdapter(adapter);
}
在适配器类内部。比如说,
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Message msg = Message.obtain();
msg.what = 1;
MyActivity.handler.sendMessage(msg);
}
});
这很简单,只要在适配器类中编写一个方法,并在删除或添加列表中绑定到适配器的任何内容时调用它get view,然后在列表中更改后使用notifyDataSetChanged
public void updateResults(ArrayList<CustomList> results) {
// assign the new result list to your existing list it will work
notifyDataSetChanged();
}
public void updateResults(ArrayList结果){
//将新的结果列表分配给现有列表,它将起作用
notifyDataSetChanged();
}
您需要在适配器上调用notifyDataSetChanged(),我无法在适配器类方法getView()中调用此函数。我正在适配器的get view()方法中调用一个图像按钮click listener,因为我需要刷新列表视图。我想在适配器类的getView()方法中刷新整个listview。最后我得到了它,用于再次启动列表视图活动。这在使用适配器上下文的适配器类中是可能的;在getView中,notifyDataSetChanged()不反映listview中的更改