WidgetCollection

WidgetCollection 是表示一组控件的类数组对象,由控件方法 childrenfind 返回。

通过 “const {WidgetCollection} = require('tabris');” 引入该类。

WidgetCollection是表示任意数量控件的类数组对象 - 也可能为空。

它合并了JavaScript数组API的子集和Tabris.js控件API的子集。像数组一样,集合中的控件可以通过 [index] 语法直接访问。控件个数存储在length 字段。WidgetCollection的实例是不可变的。

示例:

  1. let children = page.children();
  2. for (let child of children) {
  3. console.log(child.id);
  4. }

调用 setanimate 改变集合中所有控件的给定属性。同样 onoffonce 方法将会向/从所有的控件添加/移除给定的事件监听。使用 get 时,会返回集合中的第一个控件。

方法

animate(properties, options)

参数:

  • properties: {transform?: Transformation, opacity?: number}
    • 要做动画的属性与目标值。
  • options: AnimationOptions
    • 配置动画。
      使集合中的所有控件做动画。

appendTo(parent)

参数:

  • parent: Composite
    • 要添加控件的父控件。
      返回值:this

将集合中所有的控件添加到给定的父控件中。

children(selector)

参数:

  • selector: Selector [可选]
    • 用来过滤结果的选择器表达式或布尔值的函数。
      返回值:WidgetCollection

返回给定集合中的控件的子控件中所有匹配给定选择器的控件的集合。

dispose()

清除集合中的所有控件。

filter(selector)

参数:

返回此集合中匹配给定选择器的所有控件的一个新WidgetCollection

find(selector)

参数:

  • selector: Selector [可选]
    • 用来过滤结果的选择器表达式或布尔值的函数。
      返回值:WidgetCollection

返回给定集合中的控件的后代控件中所有匹配选择器的控件的集合。

first(selector)

参数:

  • selector: Selector [可选]
    • 用来过滤结果的选择器表达式或布尔值的函数。
      返回值:Widget

返回集合中第一个匹配选择器的控件。缺少selector参数时,和 collection[0]相同。

forEach(callback)

参数:

  • callback: (widget: Widget, index: number, collection: WidgetCollection) => void
    • 为每个控件调用的函数。参数: widgetindexcollection
      为集合中的每个控件调用一次给定的函数。

get(property)

参数:

  • property: string
    返回值:any

返回集合中第一个控件的给定的属性的值。

includes(widget)

参数:

  • widget: Widget
    • 要在集合中查找的控件。
      返回值:boolean

如果集合中包含给定控件,返回 true ,否则返回 false

indexOf(widget)

参数:

  • widget: Widget
    • 集合中的控件。
      返回值:number

返回集合中给定控件的索引。如果集合中不存在此控件,返回 -1

last(selector)

参数:

  • selector: Selector [可选]
    • 用来过滤结果的选择器表达式或布尔值的函数。
      返回值:Widget

返回集合中最后一个匹配选择器的控件。缺少selector参数时,和 collection[collection.length - 1]相同。

off(event, listener, context)

参数:

  • event: string
  • listener: Function
  • context: this [可选]
    返回值:this

移除集合中所有控件的给定事件监听器。参考 Widget.off()

on(event, listener, context)

参数:

  • event: string
  • listener: Function
  • context: this [可选]
    • 在监听回调函数中, this 指向事件注册的对象。
      返回值:this

为集合中所有的控件绑定给定的事件监听器。参考 Widget.on()

once(event, listener, context)

参数:

  • event: string
  • listener: Function
  • context: this [可选]
    • 在监听回调函数中, this 指向事件注册的对象。
      返回值:this

向集合中所有的控件绑定给定的事件监听器,监听器只触发一次。参考 Widget.once()

parent()

返回值:WidgetCollection

返回集合中所有控件的直接父控件的一个集合。

set(property, value)

参数:

  • property: string
  • value: any
    返回值:this

给集合中所有的控件设置给定的属性。参考 Widget.set()

set(properties)

参数:

  • properties: Object
    返回值:this

将给定属性对象中的键值对设置给集合中所有控件。参考 Widget.set()

toArray()

返回值:Widget[]

返回由集合中所有控件组成的数组。

trigger(event, …params)

参数:

  • event: string
  • …params: any[]
    返回值:this

触发集合中所有控件的给定事件。 参考 Widget.trigger()

属性

length

只读 Type: number

集合中控件个数。

原文:

https://youjingyu.github.io/Tabris-Documention/?folderName=api&pageName=WidgetCollection.html