Android Studio 透明狀態(tài)欄的實現(xiàn)示例
最近正在學(xué)習(xí)使用Android Studio,發(fā)現(xiàn)默認(rè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)文章
探究Android中ListView復(fù)用導(dǎo)致布局錯亂的解決方案
這篇文章主要介紹了探究Android中ListView復(fù)用導(dǎo)致布局錯亂的解決方案,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-10-10快速解決android webview https圖片不顯示的問題
今天小編就為大家分享一篇快速解決android webview https圖片不顯示的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-07-07