首页 > 代码库 > 魅族手机不能通过设置Style和Background展示透明Activity的解决方法

魅族手机不能通过设置Style和Background展示透明Activity的解决方法

  最近开发一个功能,需要实现一个半透明的Activity,之前都是通过在AndroidManifest中设置android:theme="@android:style/Theme.Translucent"的方法实现的。结果QA同学发现在魅族手机上会显示成不透明的灰色效果。后来把Activity的布局文件设置android:background="@color/transparent",还是不起作用。

  于是想到改为使用Window的alpha属性来实现,设置WindowManager.LayoutParams的alpha为0.5,能实现透明效果,但Activity上所有的控件也会变成半透明。

  在调试过程中发现Window有一个setBackgroundDrawable的接口,尝试了一下,通过getWindow().setBackgroundDrawable()方法,传入一张半透明的.9图片作为背景,是能够在魅族手机上实现半透明效果的。

魅族手机不能通过设置Style和Background展示透明Activity的解决方法