Flex AS3 - 继承和工厂方法
在问我的问题之前,我想解释一下我的架构。我的数据是混合类型,如 String 、 Array Collection 、 Boolean 我必须将数据填充到适当的 UI 组件中 - 例如布尔值到复选框、数组到列表。 ....所以我们创建了一个工厂类,它将根据输入参数
- CTextfield 返回 3 种不同类型的组件 ->扩展 mx.controls.Text
- CList ->扩展 mx.controls.List
- CCheckBox ->扩展 custom.MultiLineCheckBox
。
MultiLineCheckBox 扩展了 mx.controls.CheckBox 并重写了一些方法来带来多行标签。
http://spy6.blogspot.com/2008/09/flex-multiline -checkbox.html
它工作完美。我在整个应用程序中任何我想要复选框的地方使用 MultiLineCheckBox。
现在我进入了一个场景,我想要复选框而不是 MultiLineCheckBox。如何重写我的 CCheckBox 来处理 MultiLineCheckBox 和默认 CheckBox?
注意:每个 CCheckBox 类都有很多 init 方法。
Before asking my question I would like to explain little about my architecture.My data is of mixed types like String , Array Collection , Boolean I have to populate the data into appropriate UI component - for example Boolean to check box , Array to List...... so We have created a factory class which will return 3 different type of component based on the input argument
- CTextfield -> extends mx.controls.Text
- CList -> extends mx.controls.List
- CCheckBox -> extends custom.MultiLineCheckBox
.
MultiLineCheckBox which extends mx.controls.CheckBox and few methods are overridden to bring the multiple line label.
http://spy6.blogspot.com/2008/09/flex-multiline-checkbox.html
It works perfect.Am using the MultiLineCheckBox in the entire application wherever I want check Box.
Now I went into a scenario where I want check Box instead of MultiLineCheckBox. How to rewrite my CCheckBox to handle MultiLineCheckBox and also default CheckBox?
Note : Each of the CCheckBox class has lot of methods init.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要一个从具体工厂(http://cnx.org/content/m17203/latest/AbstractFactory.jpg)扩展的抽象工厂,然后在其中编写处理不同场景的逻辑,何时使用复选框与多行复选框
You need an abstract factory that extends from your concrete factory (http://cnx.org/content/m17203/latest/AbstractFactory.jpg) then write the logic of handle the different scenarios in it, when to use checkbox vs multilinecheckbox