您的位置:首页 > 移动开发 > Android开发

Android中设置组件半透明和透明的效果示例

2017-05-03 14:53 656 查看

本文介绍了Android是如何设置组件半透明和透明的效果,分享出来供大家参考,下面来看看详细的介绍:

1、Button或者ImageButton的背景设为透明或者半透明

半透明 

<Button android:background="#e0000000" ... />

透明 

<Button android:background="#00000000" ... />

颜色和不透明度 (alpha) 值以十六进制表示法表示。任何一种颜色的值范围都是 0 到 255(00 到 ff)。

对于 alpha,00 表示完全透明,ff 表示完全不透明。表达式顺序是“aabbggrr”,

其中aa=alpha(00 到 ff);bb=blue(00 到 ff);gg=green(00 到 ff);rr=red(00 到 ff)。

例如,如果希望对某叠加层应用不透明度为 50% 的蓝色,则应指定以下值:7fff0000

//Java代码
View v = findViewById(R.id.content);//找到你要设透明背景的layout 的id
v.getBackground().setAlpha(100);//0~255透明度值 ,值越小越透明

2. 使用Android系统自带的透明效果资源

<Button android:background="@android:color/transparent"/>

半透明效果例子如下:

先在color.xml中定义半透明颜色,比如:

<color name="translucent">#55000000</color>

然后,比如在针对全屏Dialog的设定中,在其background中添加上述的半透明效果

<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:windowBackground">@color/translucent</item>
<item name="android:backgroundDimEnabled">false</item>
<item name="android:windowCloseOnTouchOutside">false</item>
</style>

完整的例子 --- Activity设置透明/半透明

在res/values/styles.xml中:

<resources>
<style name="Transparent">
<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>

在res/values/color.xml中:

<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="transparent_background">#50000000</color>
</resources>

注意:

//color.xml的#5000000前两位是透明的效果参数从00--99(透明--不怎么透明),

//后6位是颜色的设置

manifest.xml中的设定:

<activity
android:name=".TransparentActivity"
android:theme="@style/Transparent">
</activity>

java代码

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setTheme(R.style.Transparent);
setContentView(R.layout.transparent);
// ... ...
}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用node.js能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。

您可能感兴趣的文章:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android 半透明 组件