我正在尝试创建一个Listview,一旦按下警报对话框中的某个按钮,它就会自动刷新。这是我的代码,当我打开活动时,它会正确加载项目,但是当我单击对话框的否定按钮时,它会成功执行其中的操作,但不会刷新列表。这是代码:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
user = loadUser();
final ArrayAdapter<String> arAd = new ArrayAdapter<String>(this, R.layout.user_list,user);
setListAdapter(arAd);
ListView listView = getListView();
listView.setTextFilterEnabled(true);
listView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, final View view, final int position, long id) {
new AlertDialog.Builder(UserList.this)
.setTitle("Gestisci test")
.setMessage("Scegli un'operazione")
.setPositiveButton("Apri test", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//to handle
}
})
.setNegativeButton("Elimina Test", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
File dir = new File("..");
dir.delete();
//Here I should refresh the list
arAd.notifyDataSetChanged();
}
})
.setIcon(android.R.drawable.ic_dialog_alert)
.show();
}
});
}
答案 0 :(得分:0)
您应该在删除文件之后或之前从适配器中删除项目,然后调用notifyDataSetChanged()
,从文件系统中删除文件并在适配器上调用notifyDataSetChanged()
不会刷新列表中的列表。适配器