歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android Dialog 全屏

Android Dialog 全屏

日期:2017/3/1 9:57:41   编辑:Linux編程

Android中讓Dialog全屏:

一、在style中定義樣式:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="Transparent">
<item name="android:windowBackground">@color/transparent_background</item>
<item name="android:windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@+android:style/Animation.Translucent</item>
</style>
</resources>

其中transparent_background為顏色值:#50000000,透明度為50

二、代碼中定義Dialog時添加樣式:


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

------------------------------------分割線------------------------------------

全屏顯示Dialog的設置

下面是Dialog的style:

<!-- 全屏dialog樣式 左右插入 -->
<style name="mydialog" parent="@android:style/Theme.Dialog">
<item name="android:windowFrame">@null</item>
<item name="android:windowIsFloating">true</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowNoTitle">true</item>
<item name="android:backgroundDimEnabled">false</item>
<item name="android:windowBackground">#FFFFFF</item>
</style>

下面是創建Dialog的代碼:

Dialog dialog = new Dialog(Activity.this, R.style.mydialog);
dialog.setContentView(R.layout.layout);
LayoutParams lay = dialog.getWindow().getAttributes();
setParams(lay);
dialog.show();

下面是設置Dialog的LayoutParams的屬性方法:

private void setParams(LayoutParams lay) {
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
Rect rect = new Rect();
View view = getWindow().getDecorView();
view.getWindowVisibleDisplayFrame(rect);
lay.height = dm.heightPixels - rect.top;
lay.width = dm.widthPixels;
}

一款Android自定義全屏Dialog 源碼下載:

免費下載地址在 http://linux.linuxidc.com/

用戶名與密碼都是www.linuxidc.com

具體下載目錄在 /2013年資料/5月/3日/Android Dialog 全屏

更多Android相關信息見Android 專題頁面 http://www.linuxidc.com/topicnews.aspx?tid=11

Copyright © Linux教程網 All Rights Reserved