activity半背景透明的一些小坑

本文分享了在Android应用中实现透明Activity的过程及遇到的问题。通过代码示例介绍了如何移除标题栏、设置竖屏显示并调整状态栏颜色等细节。

因为需要用到一个透明的activity,就摸索着试了试,遇到了一些小坑。总结下:

没有标题栏的页面

/**
 * Created by gj on 2016/8/2.
 */
public class ShareActivity extends Activity{

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);// 竖屏
        LogUtil.e("share onCreate");
        //去除title
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        //去掉Activity上面的状态栏
//        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
        setContentView(R.layout.activity_share);
    }

}

运行之后发现,在高版本上状态栏颜色很low。

继续改

Manifest中

<activity android:name=".view.activity.ShareActivity"
    android:theme="@style/translucent"></activity>
styles中:

<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimary</item>
    <item name="colorAccent">@color/colorPrimary</item>

</style>

<!-- item name="android:windowBackground"         设置背景透明度及其颜色值 -->
<!-- item name="android:windowIsTranslucent"      设置当前Activity是否透明-->
<!-- item name="android:windowAnimationStyle"     设置当前Activity进出方式-->
<style name="translucent" parent="AppTheme">
   <item name="android:windowBackground">@color/translucent_background</item>
    <item name="android:windowIsTranslucent">true</item>
    标题栏颜色。
   <item name="colorPrimaryDark">#16444444</item>
    <item name="android:windowAnimationStyle">@android:style/Animation.Translucent</item>
</style>




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值