首页 > 系统 > Android > 正文

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

2019-12-12 02:56:46
字体:
来源:转载
供稿:网友

本文介绍了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能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对武林网的支持。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表