Android手机界面组成

本文介绍了Android手机界面的组成,包括SystemUI和应用程序App区域。详细讲解了DecorView、mContentParent和mContentRoot等概念,并提供了获取各组成部分位置和宽高的参考资料。还提到了状态栏和导航栏的显示、隐藏及软键盘的处理方法。

组成

Android界面组成

上面图片来源:Android界面组成

Android视图关系图1

Android视图关系图2

  • mDecor : DecorView 的实例,表示 Window 内部的顶级视图(Activity中通过已添加到 ContentView 的 xml 文件中的任何一个 View 的 getRootView()获得的是DecorView)。
  • mContentParent : setContetView 所设置的布局文件就加到这个视图中
  • mContentRoot : 是 DecorView 的唯一子视图,内部包含 mContentParent、标题栏。

上面2张图片来源:Android视图架构详解

Android手机的界面组成:

  1. SystemUI,包括状态栏(即通知栏)、导航栏等。
  2. 应用程序App区域,即Window,含有DecorView。Window样式、大小、位置等的设置可参考:设置自定义Dialog的样式、大小位置
    注:软键盘是Dialog,是系统窗口。activity的属性 windowSoftInputMode 控制着软键盘与activity的main window(主窗口,应该是指 Activity 的应用程序窗口即 PhoneWindow 。 官方文档也无详细解释)之间的影响关系,对于adjustPan 等情况,软键盘弹起时,main Window 的大小不会改变。
    软键盘显示隐藏的监听,参考:安卓开发技术:监听软键盘的显示与隐藏
    软件盘各种问题,参考:Android软键盘的全面解析,让你不再怕控件被遮盖

各组成部分位置的获取

参考:Android 3种坐标系、View在各坐标系下获取自身坐标的方法、View的滑动和scroll方法


各组成部分宽高的获取

参考:Android应用坐标系统全面详解


各组成部分的显示和隐藏

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值