一直听说透明效果的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