首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

安卓-如何从子AlertDialog更新父AlertDialog

安卓中,如果需要从子AlertDialog更新父AlertDialog,可以通过以下步骤实现:

  1. 首先,在父AlertDialog的创建代码中,为其设置一个唯一的标识符(ID),例如:
代码语言:txt
复制
AlertDialog.Builder parentBuilder = new AlertDialog.Builder(MainActivity.this);
parentBuilder.setTitle("父AlertDialog");
parentBuilder.setMessage("点击按钮以显示子AlertDialog");
parentBuilder.setPositiveButton("显示子AlertDialog", new DialogInterface.OnClickListener() {
    @Override
    public void onClick(DialogInterface dialog, int which) {
        // 在这里显示子AlertDialog
        showDialogChild();
    }
});
AlertDialog parentDialog = parentBuilder.create();
parentDialog.show();
  1. 在显示子AlertDialog的方法中,创建子AlertDialog,并为其设置一个唯一的标识符(ID),例如:
代码语言:txt
复制
private void showDialogChild() {
    AlertDialog.Builder childBuilder = new AlertDialog.Builder(MainActivity.this);
    childBuilder.setTitle("子AlertDialog");
    childBuilder.setMessage("点击按钮以更新父AlertDialog");
    childBuilder.setPositiveButton("更新父AlertDialog", new DialogInterface.OnClickListener() {
        @Override
        public void onClick(DialogInterface dialog, int which) {
            // 在这里更新父AlertDialog
            updateParentDialog();
        }
    });
    AlertDialog childDialog = childBuilder.create();
    childDialog.show();
}
  1. 在更新父AlertDialog的方法中,通过父AlertDialog的标识符(ID)获取到父AlertDialog的实例,并更新其内容,例如:
代码语言:txt
复制
private void updateParentDialog() {
    AlertDialog parentDialog = (AlertDialog) MainActivity.this.findViewById(R.id.parent_dialog);
    if (parentDialog != null) {
        parentDialog.setMessage("父AlertDialog已被更新");
    }
}

这样,当点击父AlertDialog中的按钮显示子AlertDialog后,再点击子AlertDialog中的按钮即可更新父AlertDialog的内容。

在这个过程中,使用了AlertDialog.Builder类来创建AlertDialog,并通过setPositiveButton方法为按钮设置点击事件。同时,为了能够在子AlertDialog中获取到父AlertDialog的实例,需要在父AlertDialog的创建代码中为其设置一个唯一的标识符(ID),然后通过findViewById方法获取到该实例。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券