跳到主要内容

eui.PropertyEvent

   eui

   public class PropertyEvent

继承    eui.PropertyEvent → egret.Eventegret.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
  • 参数
    • type:string - 事件类型;指示触发事件的动作。
    • bubbles:boolean - 指定该事件是否可以在显示列表层次结构得到冒泡处理。
    • cancelable:boolean - 指定是否可以防止与事件相关联的行为。
    • property:string - 发生改变的属性名称。

dispatchPropertyEvent()

public dispatchPropertyEvent(target:egret.IEventDispatcher,eventType:string,property:string):boolean

使用指定的 EventDispatcher 对象来抛出事件对象。抛出的对象将会缓存在对象池上,供下次循环复用。

  • 支持版本:eui 1.0
  • 运行平台:Web,Native
  • 参数

示例

**

* 以下示例使用 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;

}

}