我们如何知道用户取消对话的确切方式?

时间:2016-07-15 09:15:52

标签: android android-dialogfragment android-dialog

我使用带Me.sub_ModelList.Form.RecordSource = strSearchTerm 的可取消对话框片段。现在我想区分两种情况:

  • 用户使用后退按钮取消对话框;
  • 用户通过触摸
  • 来取消对话框。

这两个操作都会导致调用setCanceledOnTouchOutside(true)onCancel()个侦听器。这两个听众也接受onDismiss()作为参数,没有任何"事件状态"检查用户具有 DialogInterface 对话框的确切程度。

那我该怎么办?

1 个答案:

答案 0 :(得分:1)

要知道用户是否按下了设备的后退按钮,请覆盖onBackPressed方法:

@Override
public void onBackPressed()
{
 //here you could set a boolean to know if the user pressed the back button, and react accordingly when the dialog is closed.
backPressed=true;
}

例如。