Android 设置Activity样式 透明度

来自于: http://www.cnblogs.com/a284628487/p/3175886.html?utm_source=tuicool

Android 设置Activity样式 透明度

一、设置Activity透明度
有几种方法:
1>.在清单文件中配置Activity时声明android:theme="@android:style/Theme.Translucent" 
2>.使用自定义主题,先看看自定义主题中需要用到的一些属性设置说明

<style name="custom" parent="@android:style/Theme.Dialog">
        <item name="android:windowFrame">@null</item><!-- 边框 -->
        <item name="android:windowIsFloating">true</item><!-- 是否悬浮在activity上 -->
        <item name="android:windowIsTranslucent">true</item><!-- 半透明 -->
        <item name="android:windowNoTitle">true</item><!-- 无标题 -->
        <item name="android:windowBackground">@android:color/transparent</item><!-- 背景透明 -->
        <item name="android:backgroundDimEnabled">false</item><!-- 模糊 -->
        <item name="android:backgroundDimAmount">0.6</item><!-- 灰度 -->
        <item name="android:windowContentOverlay">@null</item><!-- 窗口是否有遮盖,可以把ActionBar下面的分隔线去掉 -->
        <item name="android:windowAnimationStyle">@+android:style/Animation.Translucent</item><!-- Activity切换动画效果,也可以自定义 -->
        <item name="android:colorBackgroundCacheHint">@null</item><!-- 背景缓存颜色 -->
    </style>

下面是一个简单的半透明效果,类似微信登录切换账号时,下面会弹出三个按钮,上面是半透明的效果;

    <color name="trans_parent">#9000</color> <!--透明度-->
  <!-- 在此添加一种颜色值模式ARGB{xxxxxxxx},A{前两位}表示Appha即透明度,取值为0-255 -->
    <style name="TransParentTheme">
        <item name="android:windowBackground">@color/trans_parent</item>
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:windowAnimationStyle">@+android:style/Animation.Translucent</item> <!--Activity切换动画效果-->
    </style>

定义好主题之后需要在Activity配置中进行对主题的引用!

在代码中对窗体设置透明度灰度的方法
设置透明度(这是窗体本身的透明度,非背景)
        WindowManager.LayoutParams windowLP = getWindow().getAttributes();
        windowLP.alpha = 0.5f;
        getWindow().setAttributes(windowLP);
alpha在0.0f到1.0f之间。1.0完全不透明,0.0f完全透明

设置灰度
        WindowManager.LayoutParams windowLP = getWindow().getAttributes();
        windowLP.dimAmount = 0.5f;
        getWindow().setAttributes(windowLP);
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
dimAmount在0.0f和1.0f之间,0.0f完全不暗,1.0f全暗
这些设置对dialog对话框同样也有效;

二、设置Activity/Application全屏
1.在代码中设置
       //无title    
       requestWindowFeature(Window.FEATURE_NO_TITLE);    
        //全屏    
       getWindow().setFlags(WindowManager.LayoutParams. FLAG_FULLSCREEN , WindowManager.LayoutParams. FLAG_FULLSCREEN);
       //此两段代码必须设置在setContentView()方法之前
       setContentView(R.layout.main);  

2.在配置文件中设置
在Activity的声明中设置主题为全屏

android:theme="@android:style/Theme.NoTitleBar.Fullscreen"

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值