成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

單Activity多Fragment動態(tài)修改狀態(tài)欄顏色功能

ymyang / 1513人閱讀

摘要:首先設(shè)置侵入狀態(tài)欄,并設(shè)置狀態(tài)欄為透明色,相當(dāng)于隱藏的狀態(tài)欄,然后在中封裝狀態(tài)欄,由控制自己的顏色即可但是狀態(tài)欄字體顏色還是需要通過控制。

目錄介紹

1.關(guān)于如何集成

2.關(guān)于如何使用

3.關(guān)于鳴謝

4.關(guān)于版本更新說明

5.關(guān)于其他介紹

0.說明

狀態(tài)欄工具類,應(yīng)該可以滿足絕大多數(shù)的使用場景。具體可以參考代碼案例,歡迎star??!

1.技術(shù)博客匯總

2.開源項目匯總

3.生活博客匯總

4.喜馬拉雅音頻匯總

5.其他匯總

1.關(guān)于如何集成

在gradle中添加:compile "cn.yc:YCStatusBarLib:1.3.1"

項目地址:https://github.com/yangchong2...

2.關(guān)于如何使用

2.1.1 DrawerLayout設(shè)置狀態(tài)欄

//為DrawerLayout 布局設(shè)置狀態(tài)欄顏色,純色
StatusBarUtils.setColorNoTranslucentForDrawerLayout(this, drawerLayout,getResources().getColor(R.color.colorTheme));
//為DrawerLayout 布局設(shè)置狀態(tài)欄變色,也就是加上透明度
StatusBarUtils.setColorForDrawerLayout(this, drawerLayout,getResources().getColor(R.color.colorTheme), 0);

2.1.2 設(shè)置狀態(tài)欄顏色

YCAppBar.setStatusBarColor(this, ContextCompat.getColor(this, R.color.colorAccent));

2.1.3 設(shè)置狀態(tài)欄和toolbar顏色

注意,如果是設(shè)置白色的話,則需要多帶帶設(shè)置狀態(tài)欄字體的顏色,否則看不見

如果要設(shè)置狀態(tài)欄為白色:則直接可以使用2.7中的方法

YCAppBar.setStatusBarColor(this, ContextCompat.getColor(this, R.color.colorAccent));

2.1.4 設(shè)置狀態(tài)欄透明

YCAppBar.translucentStatusBar(this, true);

2.1.5 設(shè)置狀態(tài)欄coordinatorLayout顏色

YCAppBar.setStatusBarColor(this, ContextCompat.getColor(this, R.color.colorPrimary));

2.1.6 設(shè)置狀態(tài)欄coordinatorLayout顏色透明

YCAppBar.setStatusBarColorForCollapsingToolbar(this, mAppBarLayout, collapsingToolbarLayout, toolbar, ContextCompat.getColor(this, R.color.colorPrimary));

2.1.7 設(shè)置狀態(tài)欄顏色為白色

YCAppBar.setStatusBarLightMode(this, Color.WHITE);

2.1.8 設(shè)置狀態(tài)欄和toolbar顏色為白色

YCAppBar.setStatusBarLightMode(this, Color.WHITE);

2.1.9 設(shè)置狀態(tài)欄和coordinatorLayout為白色

YCAppBar.setStatusBarLightForCollapsingToolbar(this, mAppBarLayout, collapsingToolbarLayout, toolbar, Color.WHITE);

2.2.0 單Activity多Fragment動態(tài)修改狀態(tài)欄顏色

如果是單Activity多Fragment,由Fragment控制狀態(tài)欄顏色的應(yīng)用,有兩種方案:

1.由Activity控制狀態(tài)欄背景顏色和字體顏色,提供方法供Fragment調(diào)用即可。

2.首先設(shè)置Activity侵入狀態(tài)欄,并設(shè)置狀態(tài)欄為透明色,相當(dāng)于隱藏Activity的狀態(tài)欄,

然后在BaseFragment中封裝狀態(tài)欄,由Fragment控制自己的顏色即可;
但是狀態(tài)欄字體顏色還是需要通過Activity控制。

//例如,ViewPager+TabLayout+Fragment中,很常見

@Override
public void onPageSelected(int position) {
    switch (position){
        case 0:
            //設(shè)置狀態(tài)欄為黑色
            YCAppBar.setStatusBarColor(StatusBarFragmentActivity.this,
                    ContextCompat.getColor(StatusBarFragmentActivity.this,
                            R.color.colorTheme));
            break;
        case 1:
            //設(shè)置狀態(tài)欄為紅色
            YCAppBar.setStatusBarColor(StatusBarFragmentActivity.this,
                    ContextCompat.getColor(StatusBarFragmentActivity.this,
                            R.color.colorAccent));
            break;
        case 2:
            //設(shè)置狀態(tài)欄為藍色
            YCAppBar.setStatusBarColor(StatusBarFragmentActivity.this,
                    ContextCompat.getColor(StatusBarFragmentActivity.this,
                            R.color.colorPrimary));
            break;
        case 3:
            //設(shè)置狀態(tài)欄為透明,相當(dāng)于隱藏狀態(tài)欄,也稱之為沉浸式狀態(tài)欄
            YCAppBar.translucentStatusBar(StatusBarFragmentActivity.this,
                    true);
            break;
        case 4:
            //設(shè)置狀態(tài)欄為白色
            YCAppBar.setStatusBarColor(StatusBarFragmentActivity.this,
                    ContextCompat.getColor(StatusBarFragmentActivity.this,
                            R.color.white));
            //狀態(tài)欄亮色模式,設(shè)置狀態(tài)欄黑色文字、圖標(biāo)
            StatusBarUtils.StatusBarLightMode(StatusBarFragmentActivity.this);
            break;
    }
}

2.2.1 可以自由設(shè)置狀態(tài)欄中的字體,圖標(biāo)顏色

支持類型,1:MIUUI 2:Flyme 3:android6.0

//狀態(tài)欄亮色模式,設(shè)置狀態(tài)欄黑色文字、圖標(biāo)
StatusBarUtils.StatusBarLightMode(StatusBarFragmentActivity.this);
3.關(guān)于鳴謝

關(guān)于狀態(tài)欄,采用的是拿來主義,是經(jīng)過閱讀一些項目慢慢總結(jié)而來的。

非常使用,具體的用法都已經(jīng)整理成demo,歡迎直接看代碼,如果可以麻煩star!

感謝開源前輩們的無私奉獻……

4.關(guān)于版本更新說明

v0.0 更新于2016年3月9日

v1.0 更新于2017年9月8日

v1.1 更新于2017年12月5日

v1.3 更新于2018年3月16日

v1.3.1 更新于2018年9月1日

添加了單Activity多Fragment動態(tài)修改狀態(tài)欄顏色功能

5.關(guān)于其他介紹 關(guān)于我的博客

我的個人站點:www.yczbj.org,www.ycbjie.cn

github:https://github.com/yangchong211

知乎:https://www.zhihu.com/people/...

簡書:http://www.jianshu.com/u/b7b2...

csdn:http://my.csdn.net/m0_37700275

喜馬拉雅聽書:http://www.ximalaya.com/zhubo...

泡在網(wǎng)上的日子:http://www.jcodecraeer.com/me...

郵箱:[email protected]

阿里云博客:https://yq.aliyun.com/users/a... 239.headeruserinfo.3.dT4bcV

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/76949.html

相關(guān)文章

  • Android 沉浸式解析和輪子使用

    摘要:前言我們先一起來回顧一下實現(xiàn)沉浸式狀態(tài)欄的一般套路。從以上版本才是真正的可以設(shè)置沉浸式體驗,但也僅僅是操作狀態(tài)欄和導(dǎo)航欄的顯示與隱藏。屬性解釋設(shè)置了表明會負責(zé)系統(tǒng)的繪制,繪制透明背景的系統(tǒng)狀態(tài)欄和導(dǎo)航欄,然后用和的顏色填充相應(yīng)的區(qū)域。 前言 我們先一起來回顧一下實現(xiàn)沉浸式狀態(tài)欄的一般套路。在Android上,關(guān)于對StatusBar(狀態(tài)欄)的操作,一直都在不斷改善,并且表現(xiàn)越來越好,...

    bingo 評論0 收藏0

發(fā)表評論

0條評論

ymyang

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<