如何让Activity透明
来源:互联网 发布:软件企业安全保密制度 编辑:程序博客网 时间:2024/04/29 11:44
说到这个透明效果.这问题就来了。这个Activity和layout到底是什么关系呢?如果我这个Activity里面有layout,在这个layout里有各种控件,那控件会透明吗?
我个人认为:一个Activity 就是一个窗口。layout只是描述如何瓜分这个窗口,它没有外观,真正显示的是那些控件.
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="translucent">
<item name="android:windowBackground">@color/translucent_background</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item>
</style>
</resources>
在该文件夹下在创建文件colors.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="translucent_background">#60000000</color>
super.onCreate(savedInstanceState);
setTheme(R.style.translucent);
setContentView(R.layout.main);
WindowManager.LayoutParams wl = window.getAttributes();
wl.flags=WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON;
wl.alpha=0.6f;//这句就是设置窗口里控件的透明度的.0.0全透明.1.0不透明.
window.setAttributes(wl);
恩,这样效果就出来了.
我个人认为:一个Activity 就是一个窗口。layout只是描述如何瓜分这个窗口,它没有外观,真正显示的是那些控件.
上网查了一下,Acitivity透明的方法网上很多,最常用的就是引用android系统样式,在activity中添加下面属性
<activity android:theme="@android:style/Theme.Translucent">
下面我给大家介绍一个自定义样式设置activity透明的方法
在res/values文件夹下建立styles.xml:<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="translucent">
<item name="android:windowBackground">@color/translucent_background</item>
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item>
</style>
</resources>
在该文件夹下在创建文件colors.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="translucent_background">#60000000</color>
</resources>
注意:color.xml的#60000000前两位是透明的效果参数从00--99(透明--不怎么透明),后6位是颜色的设置
有了这些设置,就得告诉Activity用这些设置.
用法一:AndroidManifest.xml中找到要设置的activity,加入theme:android:theme="@style/translucent"
用法二:在java代码中设置
public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);
setTheme(R.style.translucent);
setContentView(R.layout.main);
}
哎,不错,确实透明了.但是问题又来了,layout里的button不透明啊.如果能让他们也透明或者半透明呢?那得设置窗口属性.
Window window=getWindow();WindowManager.LayoutParams wl = window.getAttributes();
wl.flags=WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON;
wl.alpha=0.6f;//这句就是设置窗口里控件的透明度的.0.0全透明.1.0不透明.
window.setAttributes(wl);
恩,这样效果就出来了.
- 如何让Activity透明
- 如何让Activity透明
- 如何让Activity透明
- 如何让Activity透明
- 如何让Activity背景透明
- android中如何让一个Activity透明
- 让Activity透明
- 如何使Activity透明
- 让 Android.Activity 变得透明
- 如何让iframe透明
- android activity 如何设置透明
- Activity如何设置透明背景
- 如何让框架背景透明
- 如何让Form控件透明
- 如何创建一个背景透明的activity
- 如何将Activity设置为透明的
- 如何给Activity设置成透明Style
- 如何让iframe的背景透明
- J2EE 配置环境
- window phone7.1 天气预报教程(三)xml读取数据与Isolatedstorage存储数据
- SVM学习——求解二次规划问题
- See Test_See Test 教程
- cookie 和session 的区别详解
- 如何让Activity透明
- c++中的引用与指针的区别
- 2012第27周移动APP推荐
- 如何让vs2010运行程序完毕后还保留运行结果(最新修改版)
- 获取asp.net 网站路径
- 沧海桑田----致 我的洛
- __doPostBack的总结
- 问有晴
- 抽象类和接口联系与区别