• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# 类型定义
2
3## Resource
4
5资源引用类型,用于设置组件属性的值。
6
7可以通过`$r`或者`$rawfile`创建Resource类型对象,不可以修改Resource中的各属性的值。
8
9- `$r('belonging.type.name')`
10
11  belonging:系统资源或者应用资源,相应的取值为'sys'和'app';
12
13  type:资源类型,支持'color'、'float'、'string'、'media'等;
14
15  name:资源名称,在资源定义时确定。
16
17- `$rawfile('filename')`
18
19  filename:工程中resources/rawfile目录下的文件名称。
20
21## Length
22
23长度类型,用于描述尺寸单位。
24
25| 类型     | 说明                                                         |
26| -------- | ------------------------------------------------------------ |
27| string   | 需要显式指定像素单位,如'10px',也可设置百分比字符串,如'100%'。 |
28| number   | 默认单位vp。                                                 |
29| [Resource](#resource) | 使用引入资源的方式,引入系统资源或者应用资源中的尺寸。           |
30
31## ResourceStr<sup>8+</sup>
32
33字符串类型,用于描述字符串入参可以使用的类型。
34
35| 类型     | 说明                                                 |
36| -------- | --------------------------------------------------- |
37| string   | 字符串类型。                                         |
38| [Resource](#resource) | 使用引入资源的方式,引入系统资源或者应用资源中的字符串。 |
39
40## Padding
41
42内边距类型,用于描述组件不同方向的内边距。
43
44  | 名称     | 类型     | 必填 | 说明                    |
45  | ------- | ------   | ---- |------------------------ |
46  | top     | [Length](#length)   |  否  | 组件内元素距组件顶部的尺寸。   |
47  | right   | [Length](#length)   |  否  | 组件内元素距组件右边界的尺寸。 |
48  | bottom  | [Length](#length)   |  否  | 组件内元素距组件底部的尺寸。   |
49  | left    | [Length](#length)   |  否  | 组件内元素距组件左边界的尺寸。 |
50
51## Margin
52
53外边距类型,用于描述组件不同方向的外边距。
54
55  | 名称     | 类型     | 必填 | 说明                    |
56  | ------- | ------   | ---- |------------------------ |
57  | top     | [Length](#length)   |  否  | 组件外元素距组件顶部的尺寸。   |
58  | right   | [Length](#length)   |  否  | 组件外元素距组件右边界的尺寸。 |
59  | bottom  | [Length](#length)   |  否  | 组件外元素距组件底部的尺寸。   |
60  | left    | [Length](#length)   |  否  | 组件外元素距组件左边界的尺寸。 |
61
62## Offset
63
64相对布局完成位置坐标偏移量。
65
66  | 名称     | 类型     | 必填 | 说明                 |
67  | -------- | ------  | ---- |--------------------- |
68  | dx       | [Length](#length)   |  是  | 水平方向偏移量。      |
69  | dy       | [Length](#length)   |  是  | 竖直方向偏移量。      |
70
71## ResourceColor<sup>8+</sup>
72
73颜色类型,用于描述资源颜色类型。
74
75| 类型     | 说明                    |
76| -------- | ----------------------- |
77| [Color](ts-appendix-enums.md#color)    | 颜色枚举值。             |
78| number   | HEX格式颜色。            |
79| string   | rgb或者rgba格式颜色。     |
80| [Resource](#resource) | 使用引入资源的方式,引入系统资源或者应用资源中的颜色。 |
81
82## Font
83
84设置文本样式。
85
86| 名称   | 类型                           | 必填 | 说明                                                         |
87| ------ | ------------------------------ | ---- | ------------------------------------------------------------ |
88| size   | [Length](#length)       | 否   | 设置文本尺寸,Length为number类型时,使用fp单位。             |
89| weight | [FontWeight](ts-appendix-enums.md#fontweight) \| number \| string                          | 否   | 设置文本的字体粗细,number类型取值[100, 900],取值间隔为100,默认为400,取值越大,字体越粗。 |
90| family | string \| [Resource](#resource) | 否   | 设置文本的字体列表。使用多个字体,使用','进行分割,优先级按顺序生效。例如:'Arial, sans-serif'。 |
91| style  | [FontStyle](ts-appendix-enums.md#fontstyle)       | 否   | 设置文本的字体样式。                          |
92
93## Area<sup>8+</sup>
94
95区域类型,用于存储元素所占区域信息
96
97| 名称           | 类型      | 必填  | 说明                                              |
98| -------------- | -------- | ----- |------------------------------------------------- |
99| width          | [Length](#length)    |  是   |目标元素的宽度,作为返回值时,类型为number,单位vp。  |
100| height         | [Length](#length)    |  是   |目标元素的高度,作为返回值时,类型为number,单位vp。  |
101| position       | [Position](#position8) |  是   |目标元素左上角相对父元素左上角的位置。                |
102| globalPosition | [Position](#position8) |  是   |目标元素左上角相对页面左上角的位置。                  |
103
104
105## Position<sup>8+</sup>
106
107位置类型,用于表示一个坐标点。
108
109| 名称   | 类型    | 必填 | 说明                                        |
110| ----- | ------- | ---- | ------------------------------------------- |
111| x     | [Length](#length)  | 否   | x轴坐标,作为返回值时,类型为number,单位vp。   |
112| y     | [Length](#length)  | 否   | y轴坐标,作为返回值时,类型为number,单位vp。   |
113
114## ConstraintSizeOptions
115
116设置约束尺寸,组件布局时,进行尺寸范围限制。
117
118| 名称      | 类型      | 必填  | 说明           |
119| --------- | -------- | ---- | -------------- |
120| minWidth  | [Length](#length)   |  否  | 元素最小宽度。  |
121| maxWidth  | [Length](#length)   |  否  | 元素最大宽度。  |
122| minHeight | [Length](#length)   |  否  | 元素最小高度。  |
123| maxHeight | [Length](#length)   |  否  | 元素最大高度。  |
124
125## SizeOptions
126
127设置宽高尺寸。
128
129| 名称    | 类型      | 必填 | 说明            |
130| ------- | -------- | ---- | -------------- |
131| width   | [Length](#length)   |  否  | 元素宽度。      |
132| height  | [Length](#length)   |  否  | 元素高度。      |
133
134
135## BorderOptions
136
137边框属性集合,用于描述边框相关信息。
138
139| 名称   | 类型           | 必填  | 说明       |
140| ------ | ------------- | ---- | ----------- |
141| width  | [Length](#length)        |  否  | 边框宽度。   |
142| color  | [ResourceColor](#resourcecolor8) |  否  | 边框颜色。   |
143| radius | [Length](#length)        |  否  | 边框圆角半径。   |
144| style  | [BorderStyle](ts-appendix-enums.md#borderstyle)   |  否  | 边框样式。   |
145
146## CustomBuilder<sup>8+</sup>
147
148组件属性方法参数可使用CustomBuilder类型来自定义UI描述。
149
150| 名称          | 类型定义               | 描述                                                         |
151| ------------- | ---------------------- | ------------------------------------------------------------ |
152| CustomBuilder | ()&nbsp;=&gt;&nbsp;any | 这种方法类型必须使用@Builder装饰器修饰。具体用法见[@Builder](../../ui/ts-component-based-builder.md)。 |
153
154