我正在构建一个使用ListView
. 当前,当用户单击 ListView 的一行时,会执行以下代码。此代码基本上删除了一些与所选行有关的数据。该代码是 MainActivity.class 的一个片段。
//understanding this code is not crucial. list is the ListView, adapter is an
//ArrayAdapter object and displayDataMap is a Hashmap object.
list.setOnItemLongClickListener(new OnItemLongClickListener(){
@Override
public boolean onItemLongClick(AdapterView<?> arg0, View view, int position, long id) {
String key = adapter.getItem(position); //position of ListView row
String data = displayDataMap.get(key);
displayDataMap.remove(key);
//"aqlpzaml" is used as a regex.
String addressee = data.split("aqlpzaml")[1];
long time = Long.valueOf(data.split("aqlpzaml")[0]);
int finalID = Integer.valueOf(data.split("aqlpzaml")[3]);
String dateTime = sdf.format(time);
adapter.remove(addressee + " " + dateTime);
adapter.notifyDataSetChanged();
}
现在我希望在删除这些数据之前,向用户提示一个Dialog
,询问他是否确定要进行更改。
我知道如何创建Dialog
和显示它。但我不知道如何根据输入触发值adapter
的变化。我想如果我使用另一个类来创建一个对象(使用),那么我将无法在该对话框中访问类的私有变量。displayDataMap
Dialog
Dialog
DialogFragment
MainActivity
setPositiveButton()
有什么建议么 ?
谢谢。