说到这个透明效果.这问题就来了。这个Activity和layout到底是什么关系呢?  如果我这个Activity里面有layout.在这个layout里有各种控件.那控件会透明吗?
我的想法是一个Activity 是一个窗口,layout只是描述如何瓜分这个窗口.他没有外观.真正显示的是那些控件.

上网查了,Acitivity透明的方法网上很详细,我也在此列下吧

res/values文件夹下建立styles.xml:

 

  1. <?xml version=“1.0″ encoding=“utf-8″?>
  2. <RESOURCES>
  3. <STYLE name=“translucent”>
  4. <item name=“android:windowBackground”>@color/translucent_background</item>
  5. <item name=“android:windowIsTranslucent”>true</item>
  6. <item name=“android:windowAnimationStyle”>@android:style/Animation.Translucent</item>
  7. </STYLE>
  8. </RESOURCES>

 

在该文件夹下在创建文件colors.xml

  1. <?xml version=“1.0″ encoding=“UTF-8″?>
  2. <RESOURCES>
  3. <COLOR name=“translucent_background”>#60000000</COLOR>
  4. </RESOURCES>


有了这写设置就得告诉Activity用这写设置.

AndroidManifest.xml中找到要弹出的activity,加入theme:
android:theme=”@style/translucent”

哎,不错,确实透明了.但是问题又来了,layout里的button不透明啊.如果能让他们也透明或者半透明呢?那得设置窗口属性.

  1. Window window=getWindow();
  2. WindowManager.LayoutParams wl = window.getAttributes();
  3. wl.flags=WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON;
  4. wl.alpha=0.6f;   这句就是设置窗口里崆件的透明度的.0.0全透明.1.0不透明.
  5. window.setAttributes(wl);




恩.这样效果不错.