将Android AlertDialog嵌入到UI而不是弹出窗口中

时间:2018-05-10 17:07:18

标签: android modal-dialog alertdialog android-alertdialog

以下Android代码会创建一个弹出框,只能通过单击它创建的(负片)按钮来解除。

DialogFragment dialog = new DialogFragment() {
  @Override
  public Dialog onCreateDialog(Bundle savedInstanceState) {
    AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
    builder.setNegativeButton(getResources().getString(R.string.abort), 
      new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int id) {}
    });
    setCancelable(false);
    return builder.create();
  }
};  
dialog.show(getSupportFragmentManager(),"");

弹出框是否可以嵌入到UI中(以便在单击按钮之前禁用其他所有内容)?

1 个答案:

答案 0 :(得分:1)

  

可以将弹出框嵌入到UI

您可以使用DialogFragmentFragmentTransaction显示为常规片段,指明您希望它出现在哪里。

  

(以便在点击按钮之前禁用其他所有内容)

如果您不打算在自己的窗口中将DialogFragment显示为实际对话框,那么您需要自己完成该部分。