【问题标题】:How to show Alert on top of all Activities in android?如何在android中的所有活动之上显示警报?
【发布时间】:2021-09-08 14:28:07
【问题描述】:

我正在执行 AsyncTask 以在我的应用程序中调用 API。并将 API 响应显示为警报。我已经在主屏幕活动中编写了 API 调用,并在主屏幕顶部显示了该警报。但是,如果我从那个活动移动到另一个活动,那么一旦我回到主屏幕,就会看到该警报。未显示在所有活动之上。因此,我的要求是在 API 成功后在所有活动之上显示该警报。

警报代码:

 private void AlertSubmitted(String message) {
      
        AlertDialog.Builder dialogBuilder = new AlertDialog.Builder(this);
        LayoutInflater inflater = this.getLayoutInflater();
        View dialogView = inflater.inflate(R.layout.alertlayout, null);
        dialogBuilder.setView(dialogView);
        dialogBuilder.setCancelable(false);

        TextView btn_ok = dialogView.findViewById(R.id.btn_ok);
        TextView txt_dia = dialogView.findViewById(R.id.txt_dia);

        txt_dia.setText(message);

        if(subAlertDialog != null && subAlertDialog.isShowing()) {
            return;
        }
        subAlertDialog = dialogBuilder.create();

        subAlertDialog.show();
        btn_ok.setOnTouchListener(new View.OnTouchListener() {
            @Override
            public boolean onTouch(View view, MotionEvent motionEvent) {
                dbManager.deleteData();
                text.setVisibility(View.GONE);

                subAlertDialog.dismiss();
                return false;
            }
        });

    }

从 protected void onPostExecute(String s) 调用此函数。

【问题讨论】:

    标签: android android-asynctask android-alertdialog android-inflate android-layoutparams


    【解决方案1】:

    如果您想在所有屏幕上显示一个对话框,请尝试在服务中实现下载代码。

    之后,您可以扩展自定义视图以显示为对话框布局。 然后显示视图当进行 API 调用并完成 API 调用后,显示您从服务中扩展的布局。当用户点击关闭按钮或您想要它时,它将被取消。

    要提供服务,请尝试搜索Facebook chathead service example android。它将为您提供一些创建此类服务的体面示例。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-06-21
      • 1970-01-01
      • 2011-01-08
      • 1970-01-01
      • 2023-01-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多