组件重写小例子-- Vgroup 变为从下到上排列

Vgroup是一个竖直排列的容器组件,一般情况下是从上到下顺序排列,如果要实现逆转顺序的排列,就要从它的布局函数中下手


所以选择


override protected function updateDisplayList(unscaleWidth : Number,unscaleHeight : Number):void【这里只涉及到组件的布局形式,所以只针对这个布局函数重写】


从下到上的排列,不外乎就是将Vgroup类的子组件的位置挪位,利用move来定义它的x,y的位置.从而达到从下到上

1,遍历Vgroup中的子组件,利用for(var i : uint = 0 ; numChildren; i ++){ var obj : UIComponent = UIComponent(getChildAt(i))} 从而达到遍历的目的


2.获取Vgroup中的初始属相,例如bottom属性,left,up,right属性,以及相关的verticalGap 的垂直分布的间隙,从而可以考虑周全布局的位置。

利用  var vm:EdgeMetrics = viewMetricsAndPadding【获取上下左右的边距值】 例如 vm.bottom;

利用getStyle("veticalGap")【获取垂直间距】


 3 开始布局,找准第一个落脚点,然后开始循环布局

第一个最底端的是由unscaleHeight 减去 vm.bottom 得到组件最下边缘的落脚点,由此然后再得到组件的y值,边缘落脚点减去 obj.height 得到y值,然后obj,move(obj.x,新的Y值),这里由于x值不变,故不发生变化,只对y值进行布局改变,接下来只要将y值循环减去gap和高度,就可以得到从下到上的布局排列。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值