UIComponentGlobals.mx_internal::layoutManager.validateNow();
原理如下:
在flex中,主要使用LayoutManager来驱动组件的度量和布局策略, LayoutManager实现一个单例,在Application类构造函数中创建:
public function Application()
{
UIComponentGlobals.layoutManager = ILayoutManager(
Singleton.getInstance("mx.managers::ILayoutManager"));
UIComponentGlobals.layoutManager.usePhasedInstantiation = true;
if (!FlexGlobals.topLevelApplication)
FlexGlobals.topLevelApplication = this;
super();
showInAutomationHierarchy = true;
}
布局分三个阶段执行:提交、度量和布局。
那作为一个组件,是怎么样 参与到布局策略中呢?
flex中所有的组件都继承自UIComponent类,在该类上实现了一个叫IInvalidating的接口:
public interface IInvalidating
{
function invalidateProperties():void;
function invalidateSize():void;
function invalidateDisplayList():void;
function validateNow():void;
}
当组件调用invalidateProperties方法,表明该组件一个属性发生变化,需要更新.
它会在方法体写上这么一句:
UIComponentGlobals.layoutManager.invalidateProperties(this);
来告诉布局管理器(LayoutManager),布局管理器在适当的时候回调组件上的validateProperties()验证属性,
如果有属性有变化,进而再调用commitProperties()提交变化的属性.
同理,
调用invalidateSize()告诉布局管理器组件大小发生了变化.
调用invalidateDisplayList()告诉布局管理器组件布局发生了变化.
分享到:
相关推荐
java编写的可以获取全局鼠标坐标的一个小工具
通过设置全局获取栈顶对象 ,从而进行各种需要activity 对象的实例操作,进行相关操作通过设置全局获取栈顶对象 ,从而进行各种需要activity 对象的实例操作,进行相关操作通过设置全局获取栈顶对象 ,从而进行各种...
临时获取全局管理员权限.docx
在 SAP 标准布局中,想要默认用户特定布局是勾选的,缺省布局是不勾选的。
强大的C#钩子。全局钩子,获取全局键盘输入值输入值。 由于键盘键值和ascll码值不对应,本程序已做处理 后台安静运行。
c# 获取全局的鼠标坐标
简洁高效,利用全局键盘钩子监听键盘输入,在钩子回调函数中利用时间差判断输入字符的连续性来区别扫描枪输入,相关文章在本人博客
项目管理类的全局分析图,总结了各个知识域的知识点,对其进行图形分析,进而满足使用者的需要。
vs2010全局hook挂钩子获取鼠标当前位置,纯干货,点击确定按钮后可以获取屏幕任意位置的坐标显示为自己窗口的标题
基于sentinel的1.7.2 release版本进行改造, 支持全局流控规则的动态管理配置
几个利用全局钩子获取鼠标坐标的代码,可以借鉴!
智能GPT图书管理系统(SpringBoot2+Vue2),全局异常拦截器,登录校验拦截器,Echarts展示借阅量,可添加爬虫功能获取图书数据。API认证采用JWT。后端CORS跨域支持。HTTP Status Code表示状态。数据返回格式JSON。接入...
matlab开发-获取全局和全局级别。获取1992年至今全球平均海平面的时间序列。
切换加载中,加载失败,加载成功布局,支持全局配置和局部配置,无需添加布局中view, 大大降低耦合性通过Gradle抓取:compile 'com.ycjiang:loadviewhelper:1.0.2'
主要介绍了Android编程获取全局Context的方法,实例分析了基于Application类获取全局Context的实现步骤与相关技巧,需要的朋友可以参考下
全局代理免流就是为手机装上一个默认接入点,使软件游戏通过走运营商代理接入点免流,局部着使整个手机所用的服务,软件和游戏免流! 但这只是一个设想,因为有许多软件和游戏不走代理,只能使用直连接入,而通过代理...
简单好用的全局监听器,没有用任何的第三方库,代码简单明了
小程序商城系统源码,基于.Net 5.0、Uni-App开发,支持可视化布局,前后端分离,支持分布式部署,跨平台运行,拥有分销、代理、团购、拼团、秒杀、直播、优惠券、自定义表单等众多营销功能,拥有完整SKU、下单、售后...
一个获取全局热键的软件 找了很久 说明: 你的系统中有多少个热键?到底是哪个程序用了Ctrl+Shfit+Z,让你不能打开QQ的消息窗口?我能不能用Win+Z来锁定电脑呢?这样的疑问虽然不是天天都有,但遇到了,你要不用...