设置状态栏和标题栏的样式
設置狀態(tài)欄和標題欄的樣式
Android setSystemUiVisibility(visible)方法詳解
這個方法可以詳細的設置各種標題欄的狀態(tài)欄的樣式.visible的值來決定
1.SYSTEM_ UI_ FLAG_ LOW_ PROFILE: 影藏不重要的狀態(tài)欄圖標,導航欄中相應的圖標都變成了一個小點。點擊狀態(tài)欄或者標題欄還原成正常的狀態(tài)
2.SYSTEM_ UI_ FLAG_ HIDE_ NAVIGATION: 隱藏導航欄,點擊屏幕的任意地方,導航欄出現(xiàn)
3.SYSTEM_ UI_ FLAG_ FULLSCREEN: 隱藏狀態(tài)欄,從狀態(tài)欄位置往下拉,狀態(tài)欄重新出現(xiàn)
4.SYSTEM_ UI_ FLAG_ LAYOUT_ HIDE_ NAVIGATION:將布局擴展到導航欄和狀態(tài)欄后面
5.SYSTEM_ UI_ FLAG_ LAYOUT_ FULLSCREEN:將布局擴展到狀態(tài)欄后面
6.SYSTEM_ UI_ FLAG_ LAYOUT_ STABLE:穩(wěn)定布局
7.SYSTEM_ UI_ FLAG_ IMMERSIVE:配合SYSTEM_ UI_ FLAG_ HIDE_ NAVIGATION和SYSTEM_ UI_ FLAG_ FULLSCREEN使用,使狀態(tài)欄和導航欄真正的進入沉浸模式。點擊屏幕任意區(qū)域,不會退出全屏模式,只有用戶上下拉狀態(tài)欄或者導航欄時才會退出。
8.SYSTEM_ UI_ FLAG_ IMMERSIVE_ STICKY:效果同SYSTEM_ UI_ FLAG_ IMMERSIVE,當用戶上下拉狀態(tài)欄或者導航欄時,這些系統(tǒng)欄會以半透明的狀態(tài)顯示,并且在一段時間后消失。
我們可以使用上面的方法來設置標題欄和狀態(tài)欄的顏色
沉浸式狀態(tài)欄的代碼實現(xiàn)
if(Build.VERSION.SDK_INT> Build.VERSION_CODES.LOLLIPOP){Window window = getWindow();window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); //讓window來繪制狀態(tài)欄和導航欄window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);window.setNavigationBarColor(Color.TRANSPARENT);window.clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);window.setStatusBarColor(Color.TRANSPARENT);window.getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);}我們一般可以使用SYSTEM_ UI_ FLAG_ LAYOUT_ HIDE_ NAVIGATION: 這個flag值來將狀態(tài)欄和導航欄與背景圖片完全融合在一起。
注: buide版本必須在sdk 21以上,
window.addFlags(WindowManager.LayoutParams.FLAG_DRAW_SYSTEM_BAR_BACKGROUND):該標志表明用window來決定狀態(tài)欄和導航欄的背景
轉載于:https://www.cnblogs.com/xiongbo753/p/10161894.html
總結
以上是生活随笔為你收集整理的设置状态栏和标题栏的样式的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 单调栈学习笔记
- 下一篇: Unbuntu 自动重启MySQL
