903 B
903 B
Skill:系统状态栏与系统导航栏
与具体业务无关的系统栏设计:边缘到边缘、显示/隐藏与外观。
边缘到边缘
MainActivity中enableEdgeToEdge(),WindowCompat.setDecorFitsSystemWindows(window, false),内容可延伸到系统栏下。
显示/隐藏
- 使用 SystemUiController Composable:
LaunchedEffect内通过WindowInsetsController的show/hide控制statusBars()、navigationBars()。 - 本项目主界面常将状态栏与导航栏隐藏(
isStatusBarVisible = false,isNavigationBarVisible = false),由自定义顶部栏和底部栏替代。
行为与外观
systemBarsBehavior = BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE:隐藏时仍可从边缘滑出临时显示。- 图标颜色随主题:
isAppearanceLightStatusBars = !darkMode,亮色主题用深色图标,暗色主题用浅色图标。