1. 程式人生 > >Android中對話方塊右上角關閉懸浮按鈕的實現(總結)

Android中對話方塊右上角關閉懸浮按鈕的實現(總結)

其實很簡單,步驟如下:

1、需要把對話方塊的預設背景改為透明。

方法:自定義Dialog的樣式。

<!--對話方塊透明背景-->
<style name="Translucent_NoTitle" parent="android:style/Theme.Dialog">

    <!--邊框-->
    <item name="android:windowFrame">@null</item>
    <!--是否浮現在activity之上-->
    <item name="android:windowIsFloating">true</item>
    <!--半透明-->
    <item name="android:windowIsTranslucent">false</item>
    <!--無標題-->
    <item name="android:windowNoTitle">true</item>
    <!--提示框背景(透明)-->
    <item name="android:windowBackground">@color/transparent</item>
    <!--模糊-->
    <item name="android:backgroundDimEnabled">true</item>

</style>
<color name="transparent">#00000000</color>

如何使用:

final Dialog dialog = new Dialog(mContext, R.style.Translucent_NoTitle);

注意:要用Dialog,不要用AlertDialog。因為AlertDialog已經具有本身的預設樣式了。

2、透過Margin之類的屬性進行佈局排列即可。

如何向讓實現按鈕或者圖片的懸浮效果,只需要設定相應佈局的Margin或者Padding屬性即可。

PS:如果想要設定對話方塊整體的透明度的話(內容也會跟著變),程式碼如下:

//提示框整體透明度
Window window = dialog.getWindow();
WindowManager.LayoutParams lp = window.getAttributes();
lp.alpha = 0.1f;// 設定透明度為0.5
window.setAttributes(lp);