您的位置:首页 > 其它

设置背景透明 ,模糊,黑暗度

2012-02-15 11:16 190 查看
设置透明度(这是窗体本身的透明度,非背景)

view source

print?

1 WindowManager.LayoutParams lp=getWindow().getAttributes();

2 lp.alpha=0.3f;

3 getWindow().setAttributes(lp);

alpha在0.0f到1.0f之间。1.0完全不透明,0.0f完全透明

设置黑暗度

view source

print?

1 WindowManager.LayoutParams lp=getWindow().getAttributes();

2 lp.dimAmount=0.5f;

3 getWindow().setAttributes(lp);

4 getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);

dimAmount在0.0f和1.0f之间,0.0f完全不暗,1.0f全暗

设置背景模糊

view source

print?

1 getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND,

2 WindowManager.LayoutParams.FLAG_BLUR_BEHIND);

设置背景透明度

View v = findViewById(R.id.content);//找到你要设透明背景的layout 的id

v.getBackground().setAlpha(100);//0~255透明度值 ,0为完全透明,255为不透明

以上设置对dialog对话框同样有效

Activity全透明

  

  先在res/values下建colors.xml文件,写入:

  

  <?xmlversion="1.0"encoding="UTF-8"?>

  

  <resources>

  

  <colorname="transparent">#9000</color>

  

  </resources>

  

  这个值设定了整个界面的透明度,为了看得见效果,现在设为透明度为56%(9/16)左右。

  

  再在res/values/下建styles.xml,设置程序的风格

  

  <?xmlversion="1.0"encoding="utf-8"?>

  

  <resources>

  

  <stylename="Transparent">

  

  <itemname="android:windowBackground">@color/transparent</item>

  

  <itemname="android:windowIsTranslucent">true</item>

  

  <itemname="android:windowAnimationStyle">@+android:style/Animation.Translucent</item>

  

  </style>

  

  </resources>

  

  最后一步,把这个styles.xml用在相应的Activity上。即在AndroidManifest.xml中的任意<activity>标签中添加

  

  android:theme="@style/transparent"

  

  如果想设置所有的activity都使用这个风格,可以把这句标签语句添加在<application>中。

  

  最后运行程序,哈哈,是不是发现整个界面都被蒙上一层半透明了。最后可以把背景色#9000换成#0000,运行程序后,就全透明了,看得见背景下的所有东西可以却都操作无效。呵呵....
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: