最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android Studio 透明狀態(tài)欄的實現(xiàn)示例

 更新時間:2021年04月30日 08:32:18   作者:FDR_Enterprise  
這篇文章主要介紹了Android Studio 透明狀態(tài)欄的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

    最近正在學(xué)習(xí)使用Android Studio,發(fā)現(xiàn)默認的Hello World程序界面和我們平時使用的APP界面有很大的不同,多了Action Bar以及狀態(tài)欄,比較影響用戶體驗。于是我上網(wǎng)搜索了一下怎么實現(xiàn)透明的App狀態(tài)欄。在這里做一個記錄。
    要求API 23以上。

透明狀態(tài)欄

//插入到OnCreate()中
if(Build.VERSION.SDK_INT >= 21) {
            Window window = getWindow();
            window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS
                    | WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);
            window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                    | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                    | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
            window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
            window.setStatusBarColor(Color.TRANSPARENT);
            window.setNavigationBarColor(Color.TRANSPARENT);

以下是效果圖

就一圖

改變狀態(tài)欄文字顏色

    我們發(fā)現(xiàn)由于背景是淺色的,狀態(tài)欄改為透明后狀態(tài)欄中的內(nèi)容不好讀出,那么我們可以把狀態(tài)欄中的文字顏色改為深色

public void changeStatusBarTextColor(Window window, boolean isBlack) {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
            View decor = window.getDecorView();
            int flags = 0;
            if (isBlack) {
            	//更改文字顏色為深黑色
                flags = View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
            }
            else {
       			//更改文字顏色為淺色
                flags = View.SYSTEM_UI_FLAG_LAYOUT_STABLE;
            }
            decor.setSystemUiVisibility(flags);
        }
    }
    //記得調(diào)用。根據(jù)不同的背景色靈活調(diào)用函數(shù)

效果圖如下

就二圖

可以看到,文字變成了深黑色。

沉浸模式

如果我們根本就不想要狀態(tài)欄的話,可以使用如下函數(shù)

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    @Override
    public void onWindowFocusChanged(boolean hasFocus) {
        super.onWindowFocusChanged(hasFocus);
        if (hasFocus && Build.VERSION.SDK_INT >= 19) {
            View decorView = getWindow().getDecorView();
            decorView.setSystemUiVisibility(
                View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                | View.SYSTEM_UI_FLAG_FULLSCREEN
                | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
        }
    }
}

效果圖如下,這時候需要滑動頂部才會顯示狀態(tài)欄

就三圖

參考文獻:網(wǎng)上的資料,他人博客

到此這篇關(guān)于Android Studio 透明狀態(tài)欄的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)Android Studio 透明狀態(tài)欄內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

乐安县| 京山县| 三穗县| 望都县| 桂林市| 吴江市| 信宜市| 波密县| 大兴区| 松潘县| 萨嘎县| 吉林省| 天柱县| 石首市| 平舆县| 吉林市| 平顶山市| 迁安市| 安多县| 会东县| 长丰县| 沈阳市| 甘孜| 石泉县| 珠海市| 西乌珠穆沁旗| 周口市| 上杭县| 留坝县| 都昌县| 麻江县| 长治县| 乌鲁木齐市| 呼和浩特市| 江都市| 聂荣县| 玉屏| 金寨县| 广元市| 南木林县| 长治县|