Android---window的理解

Android解析Window机制 一、window介绍 什么是window 什么是view树?例如你在布局中给Activity设置了一个布局xml,那么最顶层的布局如LinearLayout就是view树的根,他包含的所有view就都是该view树的节点,所以这个view树就对应一个window。 Activity、popupWindow、Toast、dialog、menu都有自己的view树,分别对应不同的window view树是window的存在形式,window是view树的载体 window是view树的管理者,同时也是 阅读详情

1.window是view的直接管理者,所有视图都是通过window来实现的,view不能单独存在,必须依附在window这个抽象概念.

2.每个activity都对应一个窗口window(是个抽象类),PhoneWindow是window的唯一实现类,PhoneWindow对应的布局是DecirView(装饰视图,界面的根View),是一个FrameLayout,DecorView内部又分为两部分,一部分是ActionBar(标题栏,可在配置清单文件中取消),另一部分是ContentParent,即activity在setContentView对应的布局。

3.每个window对应一个DecirView和ViewRootImpl,window和DecirView通过ViewRootImpl(implement ViewParent,属于所有view的根,但是不是view.)建立联系.ViewRootImpl用于绘制view,传递各种event事件,
window

4.创建window需要用到windowManager,
它提供了3个常用的方法:addView,removeView,updateViewLayout,从这3个方法中看出window并不是实现存在的,而是以View的形式存在.
例子:添加一个window过程
//获取windowManager
mWindowManager = (WindowManager) getSystemService(Context.WINDOW_SERVICE);
//添加window,
mWindowManager.addView(mView, mLayoutParams);

代码中WindowManager.LayoutParams是windowManager的static内部类,管理window的参数(两个重要的参数:flags表示window的显示特性,type表示window的类型);

深入理解View知识系列三-Window机制、Canvas的由来、Android事件的由来 我们在第一篇和第二篇中都涉及到了Window、WindowManager、PhoneWindow,而他们到底是什么,在第二篇又出现了WindowManagerImpl、WindowManagerGlobal、WindowSession、WindowManagerService,这么一堆的东西又都是干什么?起到什么样的作用?每个Activitiy都会存在一个Window,那么整个应用又一共有多少个W 阅读详情

相关推荐

Android与JS交互 DEMO

代码解析 http://blog.csdn.net/leejizhou/article/details/50894531

Android:Window相关理解

有关Window的相关理解

qjyws的博客 2524

Xilinx FPGA 100G RDMA开发实战:基于AXI Lite配置的ROCE V2高速通信系统搭建

本文详细介绍了在Xilinx FPGA上搭建100G ROCE V2高速通信系统的实战过程。通过分析RDMA技术优势与FPGA实现的必要性,重点阐述了基于AXI Lite接口配置ERNIC IP核的关键步骤,包括硬件系统构建、驱动开发及与商用网卡的互通测试,旨在实现兼具高性能与灵活性的网络加速方案。

js777的博客 575

Android Window 理解

Window概念 Window即窗口,是一个抽象类,它的唯一实现类是PhoneWindow。Android中的所有视图都是通过Window来呈现的。Window由WindowManagerService进行管理,定义了独立的绘制区域,不予其他Window相互影响。 Window 的三种类型 应用 Window 应用Window需要对应一个Activity 子 Window 子Windo...

lbcwnu的博客 2177

Cesium中实现GPU计算的泥石流地形侵蚀

通过模拟分析,可以提前识别可能发生泥石流的区域,为防灾减灾提供依据,及时发布预警,避免或减少人员伤亡和财产损失。:在建设公路、桥梁、水库等基础设施时,通过泥石流模拟分析,可以预测泥石流可能对这些设施的影响,帮助工程设计者采取合适的防护措施,确保设施的安全性。:模拟分析有助于为灾后救援工作提供科学依据,确定受灾区域的范围、救援难度等,为救援队伍制定合理的行动方案,提升救援效率。:泥石流是山区常见的地质灾害之一,通过模拟分析可以评估某一地区发生泥石流的风险,指导土地使用规划、人口迁移等决策。

weixin_43481439的博客 1320

边缘智能新篇章:RK3588上YOLOv8姿态估计的轻量化部署与性能优化实战

本文详细介绍了在RK3588平台上部署和优化YOLOv8姿态估计模型的完整流程。通过模型转换、ONNX中间表示和性能优化策略,实现在边缘设备上的高效实时推理,为嵌入式AI应用提供可行的轻量化解决方案。

ik6789012的博客 151

android中的Window

1.通过LayoutParams了解Window分类 这里的WindowManager#LayoutParams继承的ViewGroup.LayoutParams,并实现了序列化(因为WindowManager和WindowManagerService的交互是一个IPC过程需要序列化)。 我们可以看到LayoutParams的构造函数中有两个比较重要的参数:flags和type。 Fla...

Else的笔记 2129

DOSBOX 0.74模拟器安装Windows 95

DosBox本身带有5.0版的DOS系统,启动后虚拟一个Z盘存放有Dosbox特有的外部指令,如config.com、imgmount.com等,经测试,可以顺利安装各版本的windows 3.1系统,但是不能安装win95,需要用原版的dos镜像启动才能安装。1. 获取启动盘镜像文件 下载Win95启动软盘镜像文件,名为boot.img,放到DosBox 0.74的目录下。2. 制作硬盘镜像文件

xjnzhidao的博客 9309

Android 理解Window和WindowManager

概述 Window表示窗口的概念,他是一个抽象类,他的真正实现类是PhoneWindow,WindowManager用来对Window进行管理,是外接访问Window的入口,Window操作的具体实现是在WindowManagerService中,WindowMager和WindowManagerService交互是IPC的过程 Android中所有的视图都是附加在Window上上呈现的,不管Ac...

R.先森的博客 789

基于STM32的RS485土壤氮磷钾与PH传感器数据采集与OLED显示实战(附完整代码)

本文详细介绍了基于STM32单片机通过RS485协议采集土壤氮磷钾与PH传感器数据的实战项目。涵盖硬件选型、连接方法、Modbus-RTU通信协议解析、STM32程序实现及OLED显示,提供完整代码和调试技巧,适用于农业物联网环境监测系统。

kotlin6android的博客 334

stm32f103c8t6的中文字库

stm32的成熟中文字库,上手即用,操作简单

nbbskk的博客 3653

Android理解 Window 与 WindowManager

这个东西比较复杂,笔者能力有限,只能把自己理解说一下,如果有不对的地方,望指正。 一 、 Window 介绍 在我们日常开发中,Window 看似接触的不错,实际上,Android 中所有的视图都是通过 Window 来呈现的,不管是 Activity,Dialog、Taost 还是 PupopWindow ,它们的视图其实都是附加在 Window 上的。 Window 是一个抽象类,它的具体类是 PhoneWindow,它的具体实现类位于 WindowManagerService中; 每个 window

夏至的稻穗的博客 870

Simulink仿真入门到精通(三) Simulink信号

本系列教程是根据孙忠潇编著的<<Simulink仿真及代码生成技术入门到精通>>学习笔记。 目录 Simulink仿真入门到精通(一) Simulink界面介绍 Simulink仿真入门到精通(二) Simulink模块 Simulink仿真入门到精通(三) Simulink信号 Simulink仿真入门到精通(四) Simulink子系统 Simulink仿真入门到精通(五) Simulink模型的仿真 Simulink仿真入门到精通(六) Simulink模型保存为图片 Sim

king110108的专栏 5395

《Android开发艺术探索》第8章-理解 Window 和 WindowManager 读书笔记

`Window` 表示一个窗口的概念。`Window` 是一个抽象类,它的具体实现是 `PhoneWindow`,同时也是唯一的实现。通过 `WindowManager` 可以创建一个 `Window`。外界访问 `Window` 要通过 `WindowManager`,`Window` 的具体实现位于 `WindowManagerService` 中,`WindowManager` 和 `WindowManagerService` 的交互是一个 IPC 过程。

willwaywang6 1768

游戏大厂射击游戏无缝大世界游戏DS服务器架构设计方案详解

摘要: 本文深入解析游戏大厂无缝大世界射击游戏的分布式服务器(DS)架构设计方案。以《和平精英》《量子特攻》为例,阐述如何通过动态分区、兴趣管理、弹性扩缩等核心技术应对高并发、低延迟、无缝切换等挑战。架构分为世界协调层、分区计算层、物理判定层等模块,结合微服务化、快照同步和Kubernetes调度,实现玩家跨区无感知迁移与一致判定。重点优化动态负载均衡、状态同步算法及容灾备份,依托分布式数据库与多云部署保障高可用性,为同类游戏提供可扩展的技术范本。(149字) 关键词: 无缝大世界、分布式服务器、动态分区、

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 562

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

【Android】深入理解Window和WindowManager

Android中的Window是UI视图的抽象载体,所有View都必须附着在Window上才能显示。Window通过WindowManager进行管理,主要提供添加、更新和删除View三个功能。Window分为应用窗口、子窗口和系统窗口三类,通过type属性控制层级显示顺序,flags属性决定窗口特性如焦点、触摸行为等。Window的实际实现是PhoneWindow,View通过ViewRootImpl与Window建立联系。开发者可以通过WindowManager添加悬浮窗等自定义窗口,但需注意权限和类型

2302_79323248的博客 1098

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

安卓开发艺术探索——window的理解

任何视图都是依附在window上面的,通过windowManager中的方法,addview()可以完成window的创建和添加(添加到window某某中)。 文章后面对于toast显示过程除了涉及到window机制,还涉及到ipc机制,有两个binder,一个是发送toast请求的进程调用NMS(NotificationManagerService)中的方法,然后NMS回调发送请求的进程的方法...

f1315688669的博客 192

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

Android 带你彻底理解 Window 和 WindowManager

注意这篇博客转自:https://blog.csdn.net/yhaolpz/article/details/68936932 有时候我们需要在桌面上显示一个类似悬浮窗的东西,这种效果就需要用 Window 来实现,Window 是一个抽象类,表示一个窗口,它的具体实现类是 PhoneWindow,实现位于 WindowManagerService 中。相信看到 WindowManagerServ...

qq_33411906的博客 235

深入理解 Android Window系统

最后,让我们简要介绍一下如何创建自定义Window。自定义Window允许您完全控制应用程序的UI,以实现特定的界面效果。

Android23333的博客 2341

Android 理解Window 和 WindowManager

这几天阅读了《Android开发艺术探索》的关于Window和WindowManager的章节,特此写一片博文来整理和总结一下学到的知识,做一个笔记方便自己查阅。  说到Window,大家都会想到所有的视图,包括Activity,Dialog,Toast,它们实际上都是附加在Window上的,Window是这些视图的管理者.今天我们就来具体将一下这些视图是如何附加在Window上的,Wind

小码农大梦想 1383

Android之理解Window相关类

1 引言 Window及其相关类在Android中是很重要的一部分,平常开发中直接接触Window的情况很少,但是理解Window体系对认识Android结构有很大的帮助。 本文先从Window的基本使用开始,介绍Window的添加、更新和删除操作,然后对这些操作深入分析,并对Window及其相关类做一下整体结构的梳理。 Window是一个庞大的体系,会涉及到其它知识体系,对于这部分内容,本文只是...

MEzzsy的博客 530

Android | 理解Window 和 WindowManager

前言 Window 是一个窗口的概念,是所有视图的载体,不管是 Activity,Dialog,还是 Toast,他们的视图都是附加在 Window 上面的。例如在桌面显示一个悬浮窗,就需要用到 Window 来实现。WindowManager 是访问 Window 的入口。 Window 是一个抽象类,他的实现类是 PhoneWidow,Activity 中的 DecorView ,Dialog 中的 View 都是在 PhoneWindow 中创建的。因此 Window 实际是 View 的直接管理者,

345丶 4397

Android窗口机制(二)Window,PhoneWindow,DecorView,setContentView源码理解

前篇文章中出现了PhoneWindow,DecorView这些类,如果是第一次见过的话,肯定会觉得陌生。这篇文章主要跟大家讲解Window,PhoneWindow,WindowManager,DecorView他们的理解以及他们之间的联系 Window我们来看下源码里面的说明/** * Abstract base class for a top-level window look and beha

HoHohong的博客 2675
上一篇: Android开发代码规范总结
下一篇: Android--Camera2的学习
sunyFS
博客等级 码龄7年 21粉丝 35原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值