溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Android中Dialog該如何去除白色邊框代碼

發(fā)布時間:2021-10-14 15:42:00 來源:億速云 閱讀:118 作者:柒染 欄目:編程語言

這篇文章將為大家詳細講解有關Android中Dialog該如何去除白色邊框代碼,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

使用樣式文件,在values 目錄下新建styles.xml文件,編寫如下代碼:

<resources>
    <style name="dialog" parent="@android:style/Theme.Dialog">
         <item name="android:windowFrame">@null</item>
        <item name="android:windowIsFloating">true</item>
        <item name="android:windowIsTranslucent">false</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:background">@android:color/black</item>
        <item name="android:windowBackground">@null</item>
        <item name="android:backgroundDimEnabled">false</item>
    </style>
</resources>

調用時,使用AlerDialog的接口類,Dialog 接口編寫如下代碼:

    Dialog dialog = new Dialog(SetActivity.this, R.style.dialog);

                    dialog.setContentView(R.layout.test);

                    dialog.show();

下面我們查看一下Dialog的源碼文件,里面的構造函數(shù)為如下:

public Dialog(Context context, int theme) {

        mContext = new ContextThemeWrapper(

            context, theme == 0 ? com.android.internal.R.style.Theme_Dialog : theme);

        mWindowManager = (WindowManager)context.getSystemService("window");

        Window w = PolicyManager.makeNewWindow(mContext);

        mWindow = w;

        w.setCallback(this);

        w.setWindowManager(mWindowManager, null, null);

        w.setGravity(Gravity.CENTER);

        mUiThread = Thread.currentThread();

        mDismissCancelHandler = new DismissCancelHandler(this);

    }

這里面我們可以看出,Android 使用了默認的構造函數(shù)為Dialog 設置樣式,如果沒有為其設置樣式,即默認加載事先編寫好的樣式文件,Dialog 一共由多個9.png的圖片構成,大部分都是帶有邊框的9.png圖片,所以就是為什么我們上邊的樣式文件要將其背景去除掉。這個東西搞了我好久,希望對你有幫助

前后效果對比

未設置前:

Android中Dialog該如何去除白色邊框代碼

設置后:

Android中Dialog該如何去除白色邊框代碼

關于Android中Dialog該如何去除白色邊框代碼就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

AI