美文网首页安卓开发--部件
状态栏完全透明化,支持4.4以上系统

状态栏完全透明化,支持4.4以上系统

作者: qianshilingyao | 来源:发表于2017-06-06 15:45 被阅读10次

    1、activity  初始化view 前 

    if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT){//4.4 全透明状态栏

    getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);

    }

    if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {//5.0 全透明实现

    Window window = getWindow();

    window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);

    window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN

    | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);

    window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);

    window.setStatusBarColor(Color.TRANSPARENT);//calculateStatusColor(Color.WHITE, (int) alphaValue)

    }


    2、使用没有noactionbar 的主题   

    name="AppTheme.Base"parent="Theme.AppCompat.Light.NoActionBar"


    3、定义styles

    在默认的values 定义一个styles,name="android:layout_height">45dp,4.3以及以下的系统使用这个,高度一般是45dp--50dp

    在其他的valus-v19  。。。。(目前最高sdk 7.1.1  values-v25),都放一个styles  name="android:layout_height">75dp

    相关文章

      网友评论

        本文标题:状态栏完全透明化,支持4.4以上系统

        本文链接:https://www.haomeiwen.com/subject/yragfxtx.html