Android System UI

栏目: IOS · Android · 发布时间: 6年前

内容简介:整理自只是一些笔记。本文用“:astonished:”代表“状态栏与导航栏”这七个字。

整理自 Becoming a master window fitter :wrench:) ,解释那复杂的Android状态栏与导航栏和应用界面的关系。

只是一些笔记。

本文用“:astonished:”代表“状态栏与导航栏”这七个字。

setSystemUiVisibility )

SYSTEM_UI_FLAG_

  • VISIBLE:让:astonished:回来,重新显示
  • LOW_PROFILE:让:astonished:暗淡
  • HIDE_NAVIGATION
  • FULLSCREEN

SYSTEM_UI_FLAG_

  • IMMERSIVE:让:astonished:消失,但一有操作就会回来。
  • IMMERSIVE_STICKY:和上面一个一起用,但有操作时,让:astonished:悬浮出现,稍等后再消失。

SYSTEM_UI_FLAG_

  • LIGHT_STATUS_BAR
  • LIGHT_NAVIGATION_BAR

让:astonished:浅底深色。默认是深底浅色。

SYSTEM_UI_FLAG_

  • LAYOUT_STABLE
  • LAYOUT_HIDE_NAVIGATION
  • LAYOUT_FULLSCREEN

跟应用内容的显示有关系。

让应用内容在:astonished:后面显示:LAYOUT_STABLE or LAYOUT_FULLSCREEN or LAYOUT_HIDE_NAVIGATION,后文用WTFs代替。

android:windowTranslucentStatusandroid:windowTranslucentNavigation

从KitKat引入。让:astonished:把透明、渐隐。应用内容在它们后面显示。它们会自动应用WTFs。渐隐不能改变颜色。

android:windowDrawsSystemBarBackgrounds

从Lollipop引入。默认已开启。

把:astonished:放到了应用内容的Window中,好让我们可以 activity.window.setStatusColor

android:windowTranslucent 有冲突。后者会覆盖前者设置的:astonished:的颜色,且会关闭 android:windowDrawsSystemBarBackgrounds ,这会导致:astonished:不再是应用内容的一部分,从而可能导致涉及到:astonished:SharedElement动画失效。

因此为了得到半透明的:astonished:颜色,可以用一个半透明的 android:statusBarColorandroid:navigationBarColor ,而避免使用 android:windowTranslucent

android:fitSystemWindows="true"

让这个View自己使用Padding填充周围,让它的内容不和会:astonished:重叠。几乎只有MaterialCompoents(CoordinatorLayout、DrawerLayout、CollapsingToolbarLayout等)才对这个属性有反应。

在和WTFs共同使用后,应用内容就可以既在:astonished:后显示,也不和:astonished:重叠。

DrawerLayout 设置 android:fitSystemWindows="true" 后,会自动设置WTFs。

可以给子View设置,选择是否让子View出现在:astonished:后。

WindowInsets

正确的使用:astonished:大小的方式。不许使用resources或hard-coded尺寸,得用这个。

view.setOnApplyWindowInsetsListener { _, insets ->
    return insets.comsumeSystemWindowInsets
}

Views

CoordinatorLayout

  • app:statusBarBackground

CollapsingToolbarLayout

app:statusBarScrim
app:contentScrim

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

大教堂与集市

大教堂与集市

[美] Eric S. Raymond / 卫剑钒 / 机械工业出版社 / 2014-5 / 59.00元

当代软件技术领域最重要的著作,中文版首次出版! 《大教堂与集市》是开源运动的《圣经》,颠覆了传统的软件开发思路,影响了整个软件开发领域。作者Eric S. Raymond是开源运动的旗手、黑客文化第一理论家,他讲述了开源运动中惊心动魄的故事,提出了大量充满智慧的观念和经过检验的知识,给所有软件开发人员带来启迪。本书囊括了作者最著名的“五部曲”,并经过作者的全面更新,增加了大量注释,提高了可读......一起来看看 《大教堂与集市》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试