Android开发(40) android设置透明、半透明等效果

<span style="font-family: Arial, Helvetica, sans-serif;">Button或者ImageButton的背景设为透明或者半透明</span>
<pre name="code" class="html">半透明<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
<span style="font-family: Arial, Helvetica, sans-serif;">
</span>
<span style="font-family: Arial, Helvetica, sans-serif;"></span><pre name="code" class="html"><span style="font-family: Arial, Helvetica, sans-serif;">设置透明效果 大概有三种</span>
 
<span style="font-family: Arial, Helvetica, sans-serif;">1、用android系统的透明效果</span>
Java代码 android:background="@android:color/transparent" 例如 设置按钮Java代码 <Button android:background="@android:color/transparent" android:text="@+id/Button01" android:id="@+id/Button01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#ffffff" /> 2、用ARGB来控制Java代码 半透明<Button android:background="#e0000000" /> 透明<Button android:background="#00000000" /> 3、设置alphaJava代码 View v = findViewById(R.id.content);//找到你要设透明背景的layout 的id v.getBackground().setAlpha(100);//0~255透明度值 android 窗体透明的,黑暗度等的设置技巧设置透明度(这是窗体本身的透明度,非背景)1 WindowManager.LayoutParams lp=getWindow().getAttributes();2 lp.alpha=0.3f;3 getWindow().setAttributes(lp);alpha在0.0f到1.0f之间。1.0完全不透明,0.0f完全透明设置黑暗度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全暗设置背景模糊1 getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND,2 WindowManager.LayoutParams.FLAG_BLUR_BEHIND); 
 
以上设置对dialog对话框同样有效
 
Activity的透明、半透明效果的设置transparent
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);  
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值