Android设置透明、半透明等效果


设置透明效果 大概有三种
1
、用android系统的透明效果
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、设置alpha

Java代码 
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);

alpha0.0f1.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);

dimAmount0.0f1.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

1
2
3
4
5
6
7
8
9
10
11
12

<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

1
2
3
4
5
6
7

<?xml version="1.0" encoding="utf-8"?>  
<resources>  
  <color name="transparent_background">#50000000</color>  
</resources>  
//注意:
//color.xml的#5000000前两位是透明的效果参数从00--99(透明--不怎么透明),
//后6位是颜色的设置

manifest.xml

1
2
3
4

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

java代码

1
2
3
4
5

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

配置结束。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
设置Android的Dialog为透明,有两种方法可以实现。 方法一是通过设置Dialog的背景透明度来实现。可以使用以下代码来设置Dialog的背景透明度: ```java dialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); ``` 这样会将Dialog的背景设置透明,可以看到后面的内容。 方法二是通过设置Dialog的样式来实现。可以在styles.xml中定义一个透明的样式,然后在创建Dialog时将该样式应用到Dialog上。以下是一个示例: 首先,在styles.xml中定义一个透明的样式: ```xml <style name="TransparentDialog" parent="Theme.AppCompat.Dialog"> <item name="android:windowBackground">@android:color/transparent</item> <item name="android:windowIsTranslucent">true</item> <item name="android:windowNoTitle">true</item> </style> ``` 然后,在创建Dialog时将该样式应用到Dialog上: ```java Dialog dialog = new Dialog(context, R.style.TransparentDialog); ``` 这样就可以将Dialog设置透明了。 参考资料: 主要为大家详细介绍了Android自定义Dialog内部透明、外部遮罩效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。 主要介绍了Android开发中Dialog半透明背景消失的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下。<span class="em">1</span><span class="em">2</span> #### 引用[.reference_title] - *1* [Android自定义Dialog内部透明、外部遮罩效果](https://download.csdn.net/download/weixin_38517892/12755431)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [Android开发中Dialog半透明背景消失](https://download.csdn.net/download/weixin_38703794/12790653)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值