Android:將activity設置為彈出式的並設置為透明的

1. 在res/values 下建立color.xml

 <resources>   <color name="transparent_background">#80ffffff</color>
 </resources>PS: #80是透明度的值(即80%透明),ffffff是顏色值(為黑色)
2. 在res/values下建立style.xml

<resources> <style name="Transparent" parent="android:style/Theme.Dialog">  <item name="android:windowBackground">@color/transparent_background</item>  <item name="android:windowNoTitle">true</item>  <item name="android:windowIsTranslucent">true</item>  <item name="android:windowAnimationStyle">@+android:style/Animation.Translucent</item> </style></resources>PS: parent="android:style/Theme.Dialog" 是將activity設置為彈出式窗口

3. 在AndroidManifest.xml中找到要彈出的activity,加入theme:
<activity android:name="ActivityName"  android:theme="@style/Transparent"  />完成上面設置後,你的activity就已經是透明的瞭,但是該Activity中的控件還沒有透明,如果還需要控件透明,則需要在該activity的代碼中加入如下代碼:

//設置activity中的控件透明  Window window = getWindow();  WindowManager.LayoutParams wl = window.getAttributes();  wl.flags = WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON;  wl.alpha=0.95f;//設置透明度,0.0為完全透明,1.0為完全不透明  window.setAttributes(wl);

You May Also Like