eui.PropertyEvent
包 eui
类 public class PropertyEvent
继承 eui.PropertyEvent → egret.Event → egret.HashObject
对象的一个属性发生更改时传递到事件侦听器的事件。
公共属性
属性 |
---|
PROPERTY_CHANGE : string [静态]属性改变 |
property : string 发生改变的属性名称 |
公共方法
方法 |
---|
PropertyEvent(type:string,bubbles:boolean,cancelable:boolean,property:string) 创建一个属性改变事件 |
dispatchPropertyEvent(target:egret.IEventDispatcher,eventType:string,property:string):boolean [静态]使用指定的 EventDispatcher 对象来抛出事件对象 |
属性详细信息
PROPERTY_CHANGE
PROPERTY_CHANGE : string = "propertyChange"
- 支持版本:eui 1.0
- 运行平台:Web,Native
属性改变。
property
property : string
- 支持版本:eui 1.0
- 运行平台:Web,Native
发生改变的属性名称。
方法详细信息
PropertyEvent()
public PropertyEvent(type:string,bubbles:boolean,cancelable:boolean,property:string)
创建一个属性改变事件。
- 支持版本:eui 1.0
- 运行平台:Web,Native
- 参数
dispatchPropertyEvent()
public dispatchPropertyEvent(target:egret.IEventDispatcher,eventType:string,property:string):boolean
使用指定的 EventDispatcher 对象来抛出事件对象。抛出的对象将会缓存在对象池上,供下次循环复用。
- 支持版本:eui 1.0
- 运行平台:Web,Native
- 参数
- target:egret.IEventDispatcher - 事件派发目标
- eventType:string - 事件类型;指示触发事件的动作。
- property:string - 发生改变的属性名称。
示例
**
* 以下示例使用 PropertyEventExample 类来演示对象的一个属性发生更改时传递到事件侦听器的事件
*/
class PropertyEventExample extends egret.Sprite {
private txt: eui.EditableText;
private group: eui.Group;
constructor() {
super();
this.once(egret.Event.ADDED_TO_STAGE, this.init, this);
}
private init(): void {
this.group = new eui.Group();
this.group.addEventListener(eui.PropertyEvent.PROPERTY_CHANGE, this.onChangeHandler, this);
this.addChild(this.group);
var layout = new eui.TileLayout();
layout.horizontalGap = 20;
layout.verticalGap = 20;
layout.requestedColumnCount = 3;
this.group.layout = layout;
this.stage.addEventListener(egret.TouchEvent.TOUCH_TAP, this.onTouchHandler, this);
}
private onTouchHandler(): void {
var btn = this.getButton();
this.group.addChild(btn);
}
private onChangeHandler(e: eui.PropertyEvent): void {
egret.log(e.type);
}
private getButton(): eui.Button {
var exml =
`<e:Skin class="skins.ButtonSkin" states="up,down,disabled" minHeight="50" minWidth="100" xmlns:e="http:/ns.egret.com/eui">
<e:Image source="resource/button_up.png" source.down="resource/button_down.png" scale9Grid="1,3,8,8" width="100%" height="100%"/>
<e:Label id="labelDisplay" top="8" bottom="8" left="8" right="8" size="20" fontFamily="Tahoma" textColor="0xFFFFFF" verticalAlign="middle" textAlign="center"/>
</e:Skin>`;
var clazz = EXML.parse(exml);
var btn = new eui.Button();
btn.skinName = "skins.ButtonSkin";
return btn;
}
}