Android ポップアップ ウィンドウ (ダイアログ) の背景を透明に設定する

まずアプリケーションのシナリオを宣言します: ポップアップ ウィンドウのスタイルの要件は角丸に設定されます。たとえば、
ここに画像の説明を挿入
ポップアップ ウィンドウのスタイルは角丸ですが、私の作成方法は次のようになります。
ここに画像の説明を挿入
明らかに背景を設定していないのですが、丸い角の外側に角があるのはなぜでしょうか? 黒いとんがった角なのでしょうか? ポップアップ ウィンドウを上にスライドして非表示にしたい場合は、ポップアップ ウィンドウをドラッグすると、次のような効果が得られます。このように見ると、黒い背景が露出します
ここに画像の説明を挿入
。背景を設定してスタイルを色々切り替えようとしたのですが、背景の削除に失敗しました 同時に親レイアウトにタッチイベントを入れてみました 親レイアウトを移動して背景を削除したかったのですが、結果は期待した効果を達成できませんでした。その後、ブログを読んで結果を取得しました。レイアウト リソースの背景を設定するだけです。

    Dialog mDialog = new Dialog(mContext, R.style.dialog) {
    
    
            @Override
            public void show() {
    
    
                super.show();
            }

            @Override
            public void onWindowFocusChanged(boolean hasFocus) {
    
    
                super.onWindowFocusChanged(hasFocus);
                if (hasFocus) {
    
    
                    UIUtils.hideBottomUIMenu((Activity) mContext);
                }
            }
        };
        LayoutInflater inflater = LayoutInflater.from(mContext);
        View view = inflater.inflate(R.layout.pop_notification, null);
        //设置背景为透明
        mDialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);
        mDialog.setContentView(view);

それでおしまい。それだけだよ、バアバアバア。

おすすめ

転載: blog.csdn.net/m0_46366678/article/details/128918761