android设置Activity背景色为透明

一直听说透明效果的activity,到底长啥样呢?来张图看看,上面这个白色背景的就是

透明activity.jpg

方法一

在res/values/styles.xml,设置Activity的样式

 <!--透明activity的style-->
    <style name="transparent_activity">
        <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>

color

<color name="transparent_background">#50000000</color>

Manifest.xml中添加

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

这样就给你的activity设置了透明度,当然这个color可以根据你的需要去调整透明度

方法二

只要在配置文件内activity属性配置内加上

android:theme="@android:style/Theme.Translucent" 

这样就调用了android的透明样式!

备注说明

请务必让你的Activity继承自 android.app.Activity,而不是Android.support.v7.app.AppCompatActivity。

如果你的啊窗体女同意继承自AppCompatActivity,就会报错如下

java.lang.IllegalStateException: You need to use a Theme.AppCompat theme (or descendant) with this activity.

这个估计是系统的一个bug

解决办法

//改成activity继承自Activity:
public class MainActivity extends Activity
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,680评论 25 708
  • afinalAfinal是一个android的ioc,orm框架 https://github.com/yangf...
    passiontim阅读 15,589评论 2 45
  • Masonry是一款强大iOS第三方约束类库。它的内部原理是什么呢!它充分的利用了链式编程思想和函数式编程思想进行...
    小吖朱阅读 493评论 0 0
  • 从意识层面经历的洗礼,可以从潜意识中影响一个人的行为,选择和行动。如果一个人的意识中想的是:“怎么样在一年之内达到...
    思绪的速度阅读 193评论 0 0