【Flex】自造控件的烦恼

为了满足自己的需求,也为了减轻大规模开发时的负担和出错概率,所以我需要自造一些控件。

首先,在网上找一些例子,搜到一个用NumericStepper加工成的时间输入控件,觉得它即简单适于学习上手,同时也可以直接拿来使用,所以就做了一些研究。看的过程中发现一些语句的写法是我之前从未见过的,觉得作者一定是个高手。

又从Yahoo下载了一个Yahoo控件的包(http://developer.yahoo.com/flash/astra-flex/),里面同样有一个类似的时间输入控件,还有一个专门输入IP地址的控件,也很实用。发现一些代码的写法和之前的例子类似,而且匪夷所思的程度更加厉害了,还是巨头厉害呀!

直到一次发现了这个(http://tonylian.iteye.com/admin/blogs/284604)才明白那些代码形成的原因。于是我的第一个自造控件出来了,一个固定有10个按钮的ButtonBar。由于开发的东东的要求,所有画面下方都要放这么10个按钮,为了简化画面的初始化操作,以共通方法代之,所以做这个控件。

我的体会是,既要"尊重"从MXML转化来的语句,又不能完全照搬,要根据自己的需要取其精华去其冗余,尤其是那些看不懂的部分,至少我的做法是要么闹清除它是在做什么,要不然干脆不用,自己去写(比如一个简单的绑定,转化后的AS几乎让人看不懂)。通过之前的2个例子也能看出,那些作者也并非大量采用转化后的代码,也就有N分之一(也许人家高手根本就不用这样转化,压根就是一行一行AS自己写的)

目前我的第一个控件还有一点小缺陷:由于整个ButtonBar是100%宽度的,ButtonBar的宽度可以随着画面的宽度变,但是每一个Button的宽度还是不能随着ButtonBar改变而改变的,不知有什么属性可以让所有Button等宽?我试图将Button的宽度和ButtonBar的宽度绑定(当然经过计算),但可能是由于Button宽度改变同时造成了ButtonBar的宽度也跟着改变,就造成了死循环。哪位有这方面的解决方法请不吝赐教。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值