HarmonyOS之组件通用的XML属性总览
Posted Forever_wj
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HarmonyOS之组件通用的XML属性总览相关的知识,希望对你有一定的参考价值。
一、Component
- Component 是所有组件的基类。
- Component 支持的 XML 属性,其它组件都支持。
二、基础属性
- Component 支持的 XML 的基础属性如下所示:
属性名称 | 中文描述 | 取值 | 取值说明 | 使用案例 |
---|---|---|---|---|
id | 控件identity,用以识别不同控件对象,每个控件唯一 | integer类型 | 仅可用于配置控件的id | ohos:id="$+id:component_id" |
theme | 样式 | 引用 | 仅可引用pattern资源 | ohos:theme="$pattern:button_pattern" |
width | 宽度,必填项 | float类型 | 可以配置表示尺寸的float类型。 可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:width="20" ohos:width="10vp" ohos:width="$float:size_value" |
match_parent | 表示控件宽度与其父控件去掉内部边距后的宽度相同 | ohos:width="match_parent" | ||
match_content | 表示控件宽度由其包含的内容决定,包括其内容的宽度以及内部边距的总和 | ohos:width="match_content" | ||
height | 高度,必填项 | float类型 | 可以配置表示尺寸的float类型。 可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:height="20" ohos:height="20vp" ohos:height="$float:size_value" |
match_parent | 表示控件高度与其父控件去掉内部边距后的高度相同 | ohos:height="match_parent" | ||
match_content | 表示控件高度由其包含的内容决定,包括其内容的高度以及内部边距的总和 | ohos:height="match_content" | ||
min_width | 最小宽度 | float类型 | 可以配置表示尺寸的float类型。 可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:min_width="20" ohos:min_width="20vp" ohos:min_width="$float:size_value" |
min_height | 最小高度 | float类型 | 可以配置表示尺寸的float类型 可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:min_height="20" ohos:min_height="20vp" ohos:min_height="$float:size_value" |
alpha | 透明度 | float类型 | 可以直接设置浮点数值,也可以引用float浮点数资源,取值范围在0~1 | ohos:alpha="0.86" ohos:alpha="$float:value" |
clickable | 是否可点击 | boolean类型 | 可以直接设置true/false,也可以引用boolean资源 | ohos:clickable="true" ohos:clickable="$boolean:true" |
long_click_enabled | 是否支持长点击 | boolean类型 | 可以直接设置true/false,也可以引用boolean资源 | ohos:long_click_enabled="true" ohos:long_click_enabled="$boolean:true" |
enabled | 是否启用 | boolean类型 | 可以直接设置true/false,也可以引用boolean资源 | ohos:enabled="true" ohos:enabled="$boolean:true" |
visibility | 可见性 | visible | 表示控件可见 | ohos:visibility="visible" |
invisible | 表示控件不可见,但仍然占用布局空间 | ohos:visibility="invisible" | ||
hide | 表示控件不可见,且不占用布局空间 | ohos:visibility="hide" | ||
layout_direction | 定义水平布局方向 | ltr | 表示布局方向为水平方向从左到右 | ohos:layout_direction="ltr" |
rtl | 表示布局方向为水平方向从右到左 | ohos:layout_direction="rtl" | ||
inherit | 表示继承水平布局方向 | ohos:layout_direction="inherit" | ||
locale | 表示布局方向跟随系统设置 | ohos:layout_direction="locale" | ||
background_element | 背景图层 | Element类型 | 可直接配置色值,也可引用color资源或引用media/graphic下的图片资源 | ohos:background_element="#FF000000" ohos:background_element="$color:black" ohos:background_element="$media:media_src" ohos:background_element="$graphic:graphic_src" |
foreground_element | 前景图层 | Element类型 | 可直接配置色值,也可引用color资源或引用media/graphic下的图片资源 | ohos:foreground_element="#FF000000" ohos:foreground_element="$color:black" ohos:foreground_element="$media:media_src" ohos:foreground_element="$graphic:graphic_src" |
component_description | 描述 | string类型 | 可以直接设置文本字串,也可以引用string资源 | ohos:component_description="test" ohos:component_description="$string:test_str" |
三、间距
- Component 支持的 XML 的间距如下所示:
属性名称 | 中文描述 | 取值 | 取值说明 | 使用案例 |
---|---|---|---|---|
padding | 内间距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:padding="20" ohos:padding="20vp" ohos:padding="$float:padding_value" |
left_padding | 左间距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:left_padding="20" ohos:left_padding="20vp" ohos:left_padding="$float:padding_value" |
start_padding | 前内间距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:start_padding="20" ohos:start_padding="20vp" ohos:start_padding="$float:padding_value" |
right_padding | 右内间距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:right_padding="20" ohos:right_padding="20vp" ohos:right_padding="$float:padding_value" |
end_padding | 后内间距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源。 | ohos:end_padding="20" ohos:end_padding="20vp" ohos:end_padding="$float:padding_value" |
top_padding | 上内间距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:top_padding="20" ohos:top_padding="20vp" ohos:top_padding="$float:padding_value" |
bottom_padding | 下内间距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:bottom_padding="20" ohos:bottom_padding="20vp" ohos:bottom_padding="$float:padding_value" |
margin | 外边距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:margin="20" ohos:margin="20vp" ohos:margin="$float:margin_value" |
left_margin | 左外边距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源。与margin同时配置时,margin优先级高于left_margin | ohos:left_margin="20" ohos:left_margin="20vp" ohos:left_margin="$float:margin_value" |
start_margin | 前外边距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源。与margin同时配置时,margin优先级高于start_margin | ohos:start_margin="20" ohos:start_margin="20vp" ohos:start_margin="$float:margin_value" |
right_margin | 右外边距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源。与margin同时配置时,margin优先级高于right_margin | ohos:right_margin="20" ohos:right_margin="20vp" ohos:right_margin="$float:margin_value" |
end_margin | 后外边距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源。与margin同时配置时,margin优先级高于end_margin | ohos:end_margin="20" ohos:end_margin="20vp" ohos:end_margin="$float:margin_value" |
top_margin | 上外边距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源。与margin同时配置时,margin优先级高于top_margin | ohos:top_margin="20" ohos:top_margin="20vp" ohos:top_margin="$float:margin_value" |
bottom_margin | 下外边距 | float类型 | 表示间距尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源。与margin同时配置时,margin优先级高于bottom_margin。 | ohos:bottom_margin="20" ohos:bottom_margin="20vp" ohos:bottom_margin="$float:margin_value" |
四、滚动条
- Component 支持的 XML 的滚动条属性如下所示:
属性名称 | 中文描述 | 取值 | 取值说明 | 使用案例 |
---|---|---|---|---|
scrollbar_thickness | 滚动条的厚度 | float类型 | 表示尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:scrollbar_thickness=“30” ohos:scrollbar_thickness=“10vp” ohos:scrollbar_thickness="$float:size_value" |
scrollbar_start_angle | 滚动条的起始角度 | float类型 | 可以直接设置浮点数值,也可以引用float浮点数资源 | ohos:scrollbar_start_angle=“30" ohos:scrollbar_start_angle=”$float:value" |
scrollbar_sweep_angle | 滚动条的扫描角度 | float类型 | 可以直接设置浮点数值,也可以引用float浮点数资源 | ohos:scrollbar_sweep_angle=“30" ohos:scrollbar_sweep_angle=”$float:value" |
scrollbar_background_color | 滚动条背景颜色 | color类型 | 可以直接设置色值,也可以引用color资源 | ohos:scrollbar_background_color="#A8FFFFFF" ohos:scrollbar_background_color="$color:black" |
scrollbar_color | 滚动条颜色 | color类型 | 可以直接设置色值,也可以引用color资源 | ohos:scrollbar_color="#A8FFFFFF" ohos:scrollbar_color="$color:black" |
scrollbar_fading_enabled | 滚动条是否会渐隐 | boolean类型 | 可以直接设置true/false,也可以引用boolean资源 | ohos:scrollbar_fading_enabled=“true" ohos:scrollbar_fading_enabled=”$boolean:true" |
scrollbar_overlap_enabled | 滚动条是否可以重叠 | boolean类型 | 可以直接设置true/false,也可以引用boolean资源 | ohos:scrollbar_overlap_enabled=“true" ohos:scrollbar_overlap_enabled=”$boolean:true" |
scrollbar_fading_delay | 滚动条渐隐前的延迟时间,单位ms | integer类型 | 可以直接设置整型数值,也可以引用integer资源 | ohos:scrollbar_fading_delay=“1000" ohos:scrollbar_fading_delay=”$integer:delay" |
scrollbar_fading_duration | 滚动条渐隐时长,单位ms | integer类型 | 可以直接设置整型数值,也可以引用integer资源 | ohos:scrollbar_fading_duration=“1000" ohos:scrollbar_fading_duration=”$integer:duration" |
五、旋转缩放
- Component 支持的 XML 的旋转缩放属性如下所示:
属性名称 | 中文描述 | 取值 | 取值说明 | 使用案例 |
---|---|---|---|---|
pivot_x | 旋转点X位置 | float类型 | 可以配置表示尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:pivot_x="20" ohos:pivot_x="$float:value" |
pivot_y | 旋转点Y位置 | float类型 | 可以配置表示尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:pivot_y="20" ohos:pivot_y="$float:value" |
rotate | 围绕其中心点旋转的角度 | float类型 | 可以直接设置浮点数值,也可以引用float浮点数资源 | ohos:rotate="30" ohos:rotate="$float:value" |
scale_x | X方向的缩放级别 | float类型 | 可以直接设置浮点数值,也可以引用float浮点数资源 | ohos:scale_x="1.2" ohos:scale_x="$float:value" |
scale_y | Y方向的缩放级别 | float类型 | 可以直接设置浮点数值,也可以引用float浮点数资源 | ohos:scale_y="1.2" ohos:scale_y="$float:value" |
translation_x | X方向移动的距离 | float类型 | 可以配置表示尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:translation_x="20" ohos:translation_x="20vp" ohos:translation_x="$float:value" |
translation_y | Y方向移动的距离 | float类型 | 可以配置表示尺寸的float类型,可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:translation_y="20" ohos:translation_y="20vp" ohos:translation_y="$float:value" |
六、获焦
属性名称 | 中文描述 | 取值 | 取值说明 | 使用案例 |
---|---|---|---|---|
focusable | 是否可获焦 | focus_disable | 表示控件不可获焦 | ohos:focusable="focus_disable" |
focus_adaptable | 表示控件获焦状态跟随控件自身默认特性 | ohos:focusable="focus_adaptable" | ||
focus_enable | 表示控件可以获焦 | ohos:focusable="focus_enable" | ||
focus_border_radius | 焦点边框圆角半径 | float类型 | 可以配置表示尺寸的float类型。可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:focus_border_radius="10" ohos:focus_border_radius="10vp" ohos:focus_border_radius="$float:value" |
focus_border_enable | 是否有焦点边框 | boolean类型 | 可以直接设置true/false,也可以引用boolean资源 | ohos:focus_border_enable="true" ohos:focus_border_enable="$boolean:true" |
focus_border_width | 焦点边框宽度 | float类型 | 可以配置表示尺寸的float类型。可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:focus_border_width="20" ohos:focus_border_width="10vp" ohos:focus_border_width="$float:size_value" |
focus_border_padding | 焦点边框的边距 | float类型 | 表示间距尺寸的float类型。可以是浮点数值,其默认单位为px;也可以是带px/vp/fp单位的浮点数值;也可以引用float资源 | ohos:focus_border_padding="20" ohos:focus_border_padding="20vp" ohos:focus_border_padding="$float:padding_value" |
focusable_in_touch | 触摸状态下 | boolean类型 | 可以直接设置true/false,也可以引用boolean资源 | ohos:focusable_in_touch="true" ohos:focusable_in_touch="$boolean:true" |
以上是关于HarmonyOS之组件通用的XML属性总览的主要内容,如果未能解决你的问题,请参考以下文章