new TableRow(properties)
此组件管理着 TableLayout 中的一行子组件;
需要注意的是,这并不是一个真正的可视化组件(没有从 ht.ui.View 继承),只是 TableLayout 中一行子组件的逻辑管理单位;
此组件会遍历行中的多个子组件,根据每个子组件的 preferredSize 计算行高度
但是一旦出现子组件跨行的情况就会无法计算,此时可能需要调用 setPreferredHeight(height) 手动指定;
子组件可用的布局参数(layoutParams) 请参考 TableLayout
样式属性:preferredHeight, weight, visible
Parameters:
Name | Type | Argument | Description |
---|---|---|---|
properties |
Object |
<optional> |
属性配置对象 |
Methods
-
addPropertyChangeListener(listener, scope, ahead)
-
增加属性事件变化监听函数
Parameters:
Name Type Argument Description listener
function 监听器函数
scope
Object <optional>
函数域
ahead
Boolean <optional>
是否将当前监听器插入到监听器列表开头
-
addView(view, params, index)
-
添加子组件
Parameters:
Name Type Argument Description view
ht.ui.View 子组件
params
Object <optional>
布局参数
index
Number <optional>
在子组件列表中的插入位置
-
clear()
-
删除所有子组件
-
findViewById(id, recursive) → {ht.ui.View}
-
遍历子组件列表根据 id 查找匹配的子组件
Parameters:
Name Type Description id
Object 子组件 id
recursive
Boolean 是否递归查找
Returns:
匹配到的子组件
- Type
- ht.ui.View
-
firePropertyChange(property, oldValue, newValue, compareFunc) → {Boolean}
-
派发属性变化事件
Parameters:
Name Type Argument Description property
String 属性名
oldValue
Object 属性变化之前的值
newValue
Object 属性变化之后的值
compareFunc
function <optional>
比较函数,用于比较新值和旧值是否一致,如果一致则不会派发事件
Returns:
事件是否派发成功
- Type
- Boolean
-
fp(property, oldValue, newValue, compareFunc) → {Boolean}
-
派发属性变化事件,firePropertyChange 的缩写
Parameters:
Name Type Argument Description property
String 属性名
oldValue
Object 属性变化之前的值
newValue
Object 属性变化之后的值
compareFunc
function <optional>
比较函数,用于比较新值和旧值是否一致,如果一致则不会派发事件
Returns:
事件是否派发成功
- Type
- Boolean
-
getChildLayoutParams(子组件) → {Object}
-
获取子组件的 layoutParams
Parameters:
Name Type Description 子组件
ht.ui.View Returns:
layoutParams
- Type
- Object
-
getChildren() → {ht.List}
-
获取子组件列表
Returns:
子组件列表
- Type
- ht.List
-
getId() → {Object}
-
获取唯一标识
Returns:
唯一标识
- Type
- Object
-
getMatchedStyles() → {Object}
-
获取组件匹配到的样式
Returns:
- Type
- Object
-
getParent() → {ht.ui.TableLayout}
-
获取父容器,即所属的 TableLayout
Returns:
父容器
- Type
- ht.ui.TableLayout
-
getPreferredHeight() → {Number}
-
获取行首选高度
Returns:
首选宽度
- Type
- Number
-
getPropertyValue(name)
-
取属性的值
Parameters:
Name Type Description name
String 属性名
-
getStyle() → {String}
-
获取组件的样式名;如果有多个样式名,以空格分开,如:'header title';注意此样式是指 HT 的样式,而非 CSS 样式
Returns:
样式名
- Type
- String
-
getStyleProperties() → {Object}
-
获取样式属性映射表,格式为:{'preferredHeight': true ...}
Returns:
样式属性映射表
- Type
- Object
-
getStyleValue(property) → {Object}
-
获取样式属性对应的样式值
Parameters:
Name Type Description property
String 属性名
Returns:
样式值
- Type
- Object
-
getWeight() → {Number}
-
获取行权重值,默认为 0.1
Returns:
权重值
- Type
- Number
-
isStyleProperty(property) → {Boolean}
-
判断属性是否是样式属性
Parameters:
Name Type Description property
String 属性名
Returns:
是否是样式属性
- Type
- Boolean
-
isVisible() → {Boolean}
-
判断行是否可见
Returns:
是否可见
- Type
- Boolean
-
mp(listener, scope, ahead)
-
增加属性事件变化监听函数,addPropertyChangeListener 的缩写
Parameters:
Name Type Argument Description listener
function 监听器函数
scope
Object <optional>
函数域
ahead
Boolean <optional>
是否将当前监听器插入到监听器列表开头
-
removePropertyChangeListener(listener, scope)
-
删除属性事件变化监听器
Parameters:
Name Type Argument Description listener
function 监听器函数
scope
Object <optional>
函数域
-
removeView(view)
-
删除子组件
Parameters:
Name Type Description view
ht.ui.View 要删除的子组件
-
removeViewAt(index)
-
删除子组件列表中对应下标为 index 的子组件
Parameters:
Name Type Description index
Number 子组件下标
-
setId(id)
-
设置唯一标识
Parameters:
Name Type Description id
Object 唯一标识
-
setPreferredHeight(height)
-
设置行首选高度
Parameters:
Name Type Description height
Number 高度值
-
setPropertyValue(name, value)
-
设置属性值并派发事件,自定义 set 函数内部应该调用此函数设值
Parameters:
Name Type Description name
String 属性名
value
Object 属性值
-
setStyle(styleName)
-
设置组件的样式名;如果有多个样式名,以空格分开,如:'header title';注意此样式是指 HT 的样式,而非 CSS 样式
Parameters:
Name Type Description styleName
String 样式名
-
setVisible(visible)
-
设置行是否可见
Parameters:
Name Type Description visible
Boolean 是否可见
-
setWeight(weight)
-
设置行高度权重;如果布局器的总高度大于所有行的首选高度之和,那么剩余的高度就根据权重分配,如多余出 100px 的高度, 第一行的权重值为 0.1,第二行的权重值为 0.4,那么第一行获得 100 × 0.1 / (0.1 + 0.4) = 20px,第二行获得 100 × 0.4 / (0.1 + 0.4) = 80px;
Parameters:
Name Type Description weight
Number 权重值
-
ump(listener, scope)
-
删除属性事件变化监听器,removePropertyChangeListener 的缩写
Parameters:
Name Type Argument Description listener
function 监听器函数
scope
Object <optional>
函数域