android如何设置Activity背景色为透明色

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


方法一

在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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。