首页 > 解决方案 > 交易或启动新活动时如何创建 AlertDialog?

问题描述

public void loadDialog() {
    LayoutInflater inflater = LayoutInflater.from(this);
    View subView = inflater.inflate(R.layout.dialogbox_delete_user_confirmation, null);

    subView.findViewById(R.id.txtDeleteUser);
    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setTitle("Fill your Secondary Details");
    builder.setView(subView);
    builder.create();

    builder.show();
}

在这里,我在 . 的方法中调用了该loadDialog()函数。但是当我加载特定的 . 只是我创建了活动。成功后将开始新的活动。但同时,我想在活动交易时显示该框。我怎样才能做到这一点?onCreate()ActivityAlertDialogActivityloginloginAlert Dialog

标签: androidandroid-intent

解决方案


您可以通过两种简单的方法来做到这一点。哪个是:-

  • 使用BaseActivity在这种情况下,您需要创建一个base activityAlertDialog与它一起使用的context,(当前您dialog在事务时缺少上下文),只要您想显示它,您可以通过在BaseActivity从任何其他扩展后实现该方法来显示它child activities。步骤如下所示:

     public class BaseActivity extends AppCompatActivity {
    
           public void showDialog(String msg)
           {
             // show the dialog
           }
         }
    
     public class Activity1 extends BaseActivity
        {
         public void someFunction()
         {
             showDialog("activity 1");
         }
     }
    
     public class Activity2 extends BaseActivity
     {
         public void someFunction()
         {
             showDialog("activity 2");
         }
     }
    
  • 使用Fragments在此您可以从您各自activityfragment自己控制它。但这与您当前的程序完全不同。


推荐阅读