WidgetCollection
WidgetCollection
是表示一组控件的类数组对象,由控件方法 children
和 find
返回。
通过 “const {WidgetCollection} = require('tabris');
” 引入该类。
WidgetCollection
是表示任意数量控件的类数组对象 - 也可能为空。
它合并了JavaScript数组API的子集和Tabris.js控件API的子集。像数组一样,集合中的控件可以通过 [index]
语法直接访问。控件个数存储在length
字段。WidgetCollection的实例是不可变的。
示例:
let children = page.children();
for (let child of children) {
console.log(child.id);
}
调用 set
或 animate
改变集合中所有控件的给定属性。同样 on
、off
和 once
方法将会向/从所有的控件添加/移除给定的事件监听。使用 get
时,会返回集合中的第一个控件。
方法
animate(properties, options)
参数:
- properties: {transform?: Transformation, opacity?: number}
- 要做动画的属性与目标值。
- options: AnimationOptions
- 配置动画。
使集合中的所有控件做动画。
appendTo(parent)
参数:
- parent: Composite
- 要添加控件的父控件。
返回值: this
将集合中所有的控件添加到给定的父控件中。
children(selector)
参数:
- selector: Selector [可选]
- 用来过滤结果的选择器表达式或布尔值的函数。
返回值: WidgetCollection
返回给定集合中的控件的子控件中所有匹配给定选择器的控件的集合。
dispose()
清除集合中的所有控件。
filter(selector)
参数:
- selector: Selector
- 用来过滤结果的选择器表达式或布尔值的函数。
返回值: WidgetCollection
返回此集合中匹配给定选择器的所有控件的一个新WidgetCollection。
find(selector)
参数:
- selector: Selector [可选]
- 用来过滤结果的选择器表达式或布尔值的函数。
返回值: WidgetCollection
返回给定集合中的控件的后代控件中所有匹配选择器的控件的集合。
first(selector)
参数:
- selector: Selector [可选]
- 用来过滤结果的选择器表达式或布尔值的函数。
返回值: Widget
返回集合中第一个匹配选择器的控件。缺少selector参数时,和 collection[0]
相同。
forEach(callback)
参数:
- callback: (widget: Widget, index: number, collection: WidgetCollection) => void
- 为每个控件调用的函数。参数: widget、index、collection
为集合中的每个控件调用一次给定的函数。
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
集合中控件个数。