AlertDialog.Builder fpdialog = new AlertDialog.Builder(context);
ListView fpathlist = new ListView(context);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(context,android.R.layout.simple_expandable_list_item_1, fpathdata());
OnItemClickListener listener = new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
final int position, long arg3) {
// TODO Auto-generated method stub
for (int i=0;i<=position;i++)
{
if (i==position)
{
CharSequence[] pathString = {"在地图显示","发短信","共享","删除"};
final AlertDialog.Builder pathlist = new AlertDialog.Builder(context);
pathlist.setTitle("路线收藏");
pathlist.setItems(pathString, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
//Here I want to dismiss the fpdialog
}});
pathlist.show();
}
}
}
};
fpathlist.setOnItemClickListener(listener);
fpathlist.setAdapter(adapter);
fpdialog.setView(fpathlist);
fpdialog.show();
答案 0 :(得分:2)
当您准备关闭对话框时,可以通过在Dialog对象上调用 dismiss()
来解除对话。如有必要,您还可以从活动中调用 dismissDialog(int)
,有效地为您调用Dialog上的dismiss()。
如果使用onCreateDialog(int)来管理对话框的状态,则每次关闭对话框时,Activity都会保留Dialog对象的状态。如果您决定不再需要此对象,或者清除状态非常重要,那么您应该拨打 removeDialog(int)
。这将删除对象的任何内部引用,如果对话框显示,它将忽略它。
要关闭ProgressDialog,请使用ProgressDialogName.dismiss().
例如的 Mydialog.dismiss()
强>
有关详细信息,请参阅 Android-SDK 。
看看这个 example 。
答案 1 :(得分:1)
如果您只想在按下按钮时关闭对话框,请在onClick()方法中调用dialog.dismiss()。