您现在的位置是:首页 >技术杂谈 >Android 12系统源码_WindowInsets (一)WindowInsets相关类和功能介绍网站首页技术杂谈

Android 12系统源码_WindowInsets (一)WindowInsets相关类和功能介绍

AFinalStone 2024-06-30 06:01:02
简介Android 12系统源码_WindowInsets (一)WindowInsets相关类和功能介绍

一、什么是WindowInsets?

WindowInsets源码解释为Window Content的一系列插值集合,可以理解为可以将其理解为不同的窗口装饰区域类型,比如一个Activity相对于手机屏幕需要空出的地方以腾给StatusBar、Ime、NavigationBar等系统窗口,具体表现为该区域需要的上下左右的宽高。
WindowInsets
WindowInsets包括三类:SystemWindowInsets、StableInsets、WIndowDecorInsets

  • SystemWindowInsets:全窗口下,被navigationbar、statusbar、ime或其他系统窗口覆盖的区域
  • StableInsets:全窗口下,被系统UI覆盖的区域
  • WIndowDecorInsets:系统预留属性

二、InsetsState

1、保存系统中所有的Insets的状态,他是状态描述者,持有系统中可以产生Window Insets的window状态,它主要持有以下几种类型的Insets:

frameworks/base/core/java/android/view/InsetsState.java

public class 
风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。