我有一个 fragmentActivity ,它使用 startActivityForResult(intent,getCode)来调用通过ftp发送一些文件的活动。
在方法 onActivityResult(int requestCode,int resultCode,Intent data)中使用对话框显示操作的结果(失败,成功,没有互联网等...) /强>
对话框的调用如下:
Bundle bundle = new Bundle();
bundle.putString(LLAVE_TITULO, alertTitulo);
bundle.putString(LLAVE_MENSAJE, alertMensaje);
showDialog(DIALOG_RESPUESTA, bundle);
并且 onCreateDialog 方法是基本的
@Override
protected Dialog onCreateDialog(int id, Bundle bundle)
{
Builder mAlertDialog = new AlertDialog.Builder(this);
mAlertDialog.setTitle(bundle.getString(LLAVE_TITULO));
mAlertDialog.setMessage(bundle.getString(LLAVE_MENSAJE));
mAlertDialog.setPositiveButton("Aceptar",null);
return mAlertDialog.create();
}
一切正常,但我注意到当我显示并快速关闭对话框时(我可以越快,每秒一次或两次)在某些时候对话框不再显示,直到我关闭活动并启动它再次...
这里发生了什么?我怎么能确定对话框会显示?
谢谢!
答案 0 :(得分:1)
活动为每个对话框调用onCreateDialog()一次.. 所以..我认为你应该使用DialogInterface.OnShowListener进行对话框视图窗口小部件验证