ArkTS 组件
组件 通用事件 速查表
通用事件 | 事件名称 | 简要说明 |
---|---|---|
点击事件 | onClick(event: Callback<ClickEvent>, distanceThreshold: number): T | 相较于原有 onClick 接口,新增 distanceThreshold 参数作为点击事件移动阈值,当手指的移动距离超出所设置的点击手势移动阈值时,点击手势识别失败 |
onClick(event: (event: ClickEvent) => void): T | 点击动作触发该回调 | |
触摸事件 | onTouch(event: (event: TouchEvent) => void): T | 手指触摸动作触发该回调 |
挂载卸载事件 | onAttach(callback: Callback<void>): T | 组件挂载至组件树时触发此回调 |
onDetach(callback: Callback<void>): T | 组件从组件树卸载时触发此回调 | |
onAppear(event: () => void): T | 组件挂载显示后触发此回调 | |
onDisAppear(event: () => void): T | 组件卸载消失时触发此回调 | |
拖拽事件 | onDragStart(event: (event: DragEvent, extraParams?: string) => CustomBuilder | DragItemInfo) | 第一次拖拽此事件绑定的组件时,长按时间 >= 500ms,然后手指移动距离 >= 10vp,触发回调 |
onDragEnter(event: (event: DragEvent, extraParams?: string) => void) | 拽进入组件范围内时,触发回调,当监听了onDrop事件时,此事件才有效 | |
onDragMove(event: (event: DragEvent, extraParams?: string) => void) | 拖拽在组件范围内移动时,触发回调,当监听了onDrop事件时,此事件才有效 | |
onDragLeave(event: (event: DragEvent, extraParams?: string) => void) | 拖拽离开组件范围内时,触发回调,当监听了onDrop事件时,此事件才有效 | |
onDrop(event: (event: DragEvent, extraParams?: string) => void) | 绑定此事件的组件可作为拖放目标。当在本组件范围内停止拖放行为时,将触发回调。 如果开发者未在 onDrop 中主动调用 event.setResult()来设置拖拽接收的结果,对于系统支持的默认可拖入组件,处理结果将依据系统实际处理的数据。 对于其他组件,系统将默认视为数据接收成功。 | |
onDrop(eventCallback: OnDragEventCallback, dropOptions?: DropOptions) | 绑定此事件的组件可作为拖放目标。当在本组件范围内停止拖放行为时,将触发回调。 如果开发者未在 onDrop 中主动调用 event.setResult()来设置拖拽接收的结果,对于系统支持的默认可拖入组件,处理结果将依据系统实际处理的数据。 对于其他组件,系统将默认视为数据接收成功 | |
onDragEnd(event: (event: DragEvent, extraParams?: string) => void) | 绑定此事件的组件触发的拖拽结束后,触发回调 | |
onPreDrag(event: (preDragStatus: PreDragStatus) => void) | 绑定此事件的组件,当触发拖拽发起前的不同阶段时,触发回调 | |
按键事件 | onKeyEvent(event: (event: KeyEvent) => void): T | 绑定该方法的组件获焦后,按键动作触发该回调 |
onKeyEvent(event: Callback<KeyEvent, boolean>): T | 当绑定该方法的组件获得焦点后,按键操作将触发此回调。若此回调的返回值为 true,则视为按键事件已被处理 | |
onKeyPreIme(event: Callback<KeyEvent, boolean>): T | 绑定该方法的组件获焦后,按键动作优先触发该回调 | |
onKeyEventDispatch(event: Callback<KeyEvent, boolean>): T | 对应组件收到按键事件时,会触发该回调,该按键事件不会分发给其子组件。不支持构造 KeyEvent 进行分发,只支持分发已有的按键事件 该回调的返回值为 true 时,视作该按键事件已被消费,不会冒泡给父组件处理 | |
焦点事件 | onFocus(event: () => void) | 当前组件获取焦点时触发的回调 |
onBlur(event:() => void) | 当前组件失去焦点时触发的回调 | |
鼠标事件 | onMouse(event: (event: MouseEvent) => void) | 当前组件被鼠标按键点击时或者鼠标在组件上悬浮移动时,触发该回调 |
悬浮事件 | onHover(event: (isHover: boolean, event: HoverEvent) => void): T | 鼠标或手写笔进入或退出组件时触发 hover 事件 |
onHoverMove(event: Callback<HoverEvent>): T | 手写笔悬浮于组件上方时触发悬浮移动事件 | |
无障碍悬浮事件 | onAccessibilityHover(callback: AccessibilityCallback): T | 开启无障碍模式后,单指触摸绑定该回调的组件时触发该回调 |
组件区域变化事件 | onAreaChange(event: (oldValue: Area, newValue: Area) => void): T | 组件区域变化时触发该回调。仅会响应由布局变化所导致的组件大小、位置发生变化时的回调 |
组件尺寸变化事件 | onSizeChange(event: SizeChangeCallback): T | 组件区域变化时触发该回调。 仅会响应由布局变化所导致的组件尺寸发生变化时的回调。由绘制变化所导致的渲染属性变化不会响应回调,如 translate、offset |
SizeChangeCallback = (oldValue: SizeOptions, newValue: SizeOptions) => void | 组件区域变化时的回调类型 | |
组件可见区域变化事件 | onVisibleAreaChange(ratios: Array<number>, event: VisibleAreaChangeCallback): T | 组件可见区域变化时触发该回调 |
onVisibleAreaApproximateChange(options: VisibleAreaEventOptions, event: VisibleAreaChangeCallback | undefined): void | 设置onVisibleAreaChange事件的回调参数,限制它的执行间隔 | |
组件快捷键事件 | keyboardShortcut(value: string | FunctionKey, keys: Array<ModifierKey>, action?: () => void): T | 设置组件的自定义组合键 |
自定义事件分发 | onChildTouchTest(event: (value: Array<TouchTestInfo>) => TouchResult): T | 当前组件可通过设置回调来自定义子节点如何去做触摸测试 |
自定义事件拦截 | onTouchIntercept(callback: Callback<TouchEvent, HitTestMode>) | 为组件提供自定义的事件拦截能力,开发者可根据事件在控件上按下时发生的位置,输入源等事件信息决定控件上的 HitTestMode 属性 |
焦点轴事件 | onFocusAxisEvent(event: Callback<FocusAxisEvent>): T | 绑定该方法的组件获焦后,游戏手柄上的摇杆、十字键等的操作会触发该回调 |
轴事件 | onAxisEvent(event: (event: AxisEvent) => void): T | 鼠标滚轮滚动或触控板双指移动触发该回调 |
组件 通用属性 速查表
通用属性 | 属性名称 | 简要说明 |
---|---|---|
尺寸设置 | width(value: Length) | 设置组件自身的宽度,缺省时使用元素自身内容需要的宽度。若子组件的宽大于父组件的宽,则会画出父组件的范围。 |
height(value: Length) | 设置组件自身的高度,缺省时使用元素自身内容需要的高度。若子组件的高大于父组件的高,则会画出父组件的范围。 | |
width(widthValue: Length | LayoutPolicy) | 设置组件自身的宽度或水平方向布局策略,缺省时使用元素自身内容需要的宽度。若子组件的宽大于父组件的宽,则会画出父组件的范围 | |
height(heightValue: Length | LayoutPolicy) | 设置组件自身的高度或垂直方向布局策略,缺省时使用元素自身内容需要的高度。若子组件的高大于父组件的高,则会画出父组件的范围 | |
size(value: SizeOptions) | 设置高宽尺寸 | |
padding(value: Padding | Length | LocalizedPadding) | 设置内边距属性 | |
margin(value: Margin | Length | LocalizedMargin) | 设置外边距属性 | |
safeAreaPadding(value: Padding | LengthMetrics | LocalizedPadding) | 设置安全区边距属性。允许容器向自身添加组件级安全区域,供子组件延伸 | |
layoutWeight(value: number | string) | 设置组件的布局权重,使用该属性的组件在父容器(Row/Column/Flex)的主轴方向按照权重分配尺寸 | |
constraintSize(value: ConstraintSizeOptions) | 设置约束尺寸,组件布局时,进行尺寸范围限制 | |
位置设置 | align(value: Alignment) | 设置容器元素绘制区域内的子元素的对齐方式 |
direction(value: Direction) | 设置容器元素内主轴方向上的布局 | |
position(value: Position | Edges | LocalizedEdges) | 绝对定位,确定子组件相对父组件的位置 | |
markAnchor(value: Position | LocalizedPosition) | 设置元素在位置定位时的锚点 | |
offset(value: Position | Edges | LocalizedEdges) | 相对偏移,组件相对原本的布局位置进行偏移 | |
alignRules(value: AlignRuleOption) | 指定设置在相对容器中子组件的对齐规则,仅当父容器为RelativeContainer时生效 | |
alignRules(alignRule: LocalizedAlignRuleOptions) | 指定设置在相对容器中子组件的对齐规则,仅当父容器为RelativeContainer时生效。 该方法水平方向上以 start 和 end 分别替代原方法的 left 和 right, 以便在 RTL 模式下能镜像显示,建议使用该方法指定设置在相对容器中子组件的对齐规则 | |
布局约束 | aspectRatio(value: number) | 指定当前组件的宽高比,aspectRatio=width/height |
displayPriority(value: number) | 设置当前组件在布局容器中显示的优先级 | |
组件级像素取整 | pixelRound(value: PixelRoundPolicy) | 指定当前组件在指定方向上的像素取整对齐方式,某方向不设置时默认在该方向进行四舍五入取整 |
Flex 布局 | flexBasis(value: number | string) | 设置组件的基准尺寸 |
flexGrow(value: number) | 设置组件在父容器的剩余空间所占比例 | |
flexShrink(value: number) | 置父容器压缩尺寸分配给此属性所在组件的比例。当父容器为 Column、Row 时,需设置主轴方向的尺寸 | |
alignSelf(value: ItemAlign) | 子组件在父容器交叉轴的对齐格式 | |
边框设置 | border(value: BorderOptions) | 设置边框样式 |
borderStyle(value: BorderStyle | EdgeStyles) | 设置元素的边框线条样式 | |
borderWidth(value: Length | EdgeWidths | LocalizedEdgeWidths) | 设置边框的宽度 | |
borderColor(value: ResourceColor | EdgeColors | LocalizedEdgeColors) | 设置边框的颜色 | |
borderRadius(value: Length | BorderRadiuses | LocalizedBorderRadiuses) | 设置边框的圆角。圆角大小受组件尺寸限制,最大值为组件宽或高的一半 | |
图片边框设置 | borderImage(value: BorderImageOption) | 设置组件的图片边框 |
背景设置 | background(builder: CustomBuilder, options?: { align?: Alignment }) | 设置组件背景 |
backgroundColor(value: ResourceColor) | 设置组件背景色 | |
backgroundImage(src: ResourceStr | PixelMap, repeat?: ImageRepeat) | 设置组件的背景图片 | |
backgroundImageSize(value: SizeOptions | ImageSize) | 设置组件背景图片的宽高 | |
backgroundImagePosition(value: Position | Alignment) | 设置背景图的位置 | |
backgroundBlurStyle(value: BlurStyle, options?: BackgroundBlurStyleOptions) | 为当前组件提供一种在背景和内容之间的模糊能力,通过枚举值的方式封装了不同的模糊半径、蒙版颜色、蒙版透明度、饱和度、亮度 | |
backdropBlur(value: number, options?: BlurOptions) | 为组件添加背景模糊效果,可以自定义设置模糊半径和灰阶参数 | |
backgroundEffect(options: BackgroundEffectOptions) | 设置组件背景属性,包含背景模糊半径,亮度,饱和度,颜色等参数 | |
backgroundImageResizable(value: ResizableOptions) | 设置背景图在拉伸时可调整大小的图像选项 | |
backgroundBrightness(params: BackgroundBrightnessOptions) | 设置组件背景提亮效果 | |
透明度设置 | opacity(value: number | Resource) | 设置组件的不透明度 |
显隐控制 | visibility(value: Visibility) | 控制组件的显隐 |
禁用控制 | enabled(value: boolean) | 设置组件是否可交互 |
浮层 | overlay(value: string | CustomBuilder | ComponentContent, options?: OverlayOptions ) | 在当前组件上,增加遮罩文本或者叠加自定义组件以及 ComponentContent 作为该组件的浮层。 浮层不通过组件树进行渲染,部分接口(例如getRectangleById)不支持获取浮层中的组件 |
Z 序控制 | zIndex(value: number) | 设置组件的堆叠顺序 |
图形变换 | rotate(value: RotateOptions) | 设置组件旋转 |
translate(value: TranslateOptions) | 设置组件平移 | |
scale(value: ScaleOptions) | 设置组件缩放 | |
transform(value: object) | 设置组件的变换矩阵 | |
图像效果 | blur(value: number, options?: BlurOptions) | 为组件添加内容模糊效果 |
shadow(value: ShadowOptions | ShadowStyle) | 为组件添加阴影效果 | |
grayscale(value: number) | 为组件添加灰度效果 | |
brightness(value: number) | 为组件添加高光效果 | |
saturate(value: number) | 为组件添加饱和度效果 | |
contrast(value: number) | 为组件添加对比度效果 | |
invert(value: number | InvertOptions) | 反转输入的图像 | |
sepia(value: number) | 将图像转换为深褐色 | |
hueRotate(value: number | string) | 色相旋转效果 | |
colorBlend(value: Color | string | Resource) | 为组件添加颜色叠加效果 | |
linearGradientBlur(value: number, options: LinearGradientBlurOptions) | 为组件添加内容线性渐变模糊效果 | |
renderGroup(value: boolean) | 设置当前控件和子控件是否先整体离屏渲染绘制后再与父控件融合绘制 | |
blendMode(value: BlendMode, type?: BlendApplyType) | 将当前控件的内容(包含子节点内容)与下方画布(可能为离屏画布)已有内容进行混合 | |
useShadowBatching(value: boolean) | 控件内部子节点的阴影进行同层绘制,同层元素阴影重叠 | |
sphericalEffect(value: number) | 设置组件的图像球面化程度 | |
lightUpEffect(value: number) | 设置组件图像亮起程度 | |
pixelStretchEffect(options: PixelStretchEffectOptions) | 设置组件的图像边缘像素扩展距离 | |
systemBarEffect() | 根据背景进行智能反色并且带有模糊效果 | |
FractionStop = [ number, number ] | 定义模糊段 | |
freeze(value: boolean) | 设置当前控件和子控件是否整体离屏渲染绘制后重复绘制缓存,不再进行内部属性更新 | |
形状裁剪 | clip(value: boolean) | 是否对子组件超出当前组件范围外的区域进行裁剪 |
clip(value: boolean | CircleAttribute | EllipseAttribute | PathAttribute | RectAttribute) | 按指定的形状对当前组件进行裁剪 | |
mask(value: ProgressMask) | 为组件上添加可调节进度的遮罩 | |
maskShape(value: CircleShape | EllipseShape | PathShape | RectShape) | 为组件上添加指定形状的遮罩 | |
constructor(value: number, total: number, color: ResourceColor) | 构造 ProgressMask 对象 | |
updateProgress(value: number): void | 更新进度遮罩的进度值 | |
updateColor(value: ResourceColor): void | 更新进度遮罩的颜色 | |
enableBreathingAnimation(value: boolean): void | 进度满时的呼吸光晕动画开关。默认关闭呼吸光晕动画 | |
linearGradient(value: {angle?: number | string; direction?: GradientDirection; colors: Array<[ResourceColor, number]>; repeating?: boolean;}) | 线性渐变 | |
sweepGradient(value: {center: [Length, Length]; start?: number | string; end?: number | string; rotation?: number | string; colors: Array<[ResourceColor, number]>; repeating?: boolean;}) | 角度渐变 | |
radialGradient(value: { center: [Length, Length]; radius: number | string; colors: Array<[ResourceColor, number]>; repeating?: boolean }) | 径向渐变 | |
Popup 控制 | bindPopup(show: boolean, popup: PopupOptions | CustomPopupOptions) | 给组件绑定 Popup 弹窗 |
菜单控制 | bindMenu(content: Array | CustomBuilder, options?: MenuOptions) | 给组件绑定菜单,点击后弹出菜单。弹出菜单项支持图标+文本排列和自定义两种功能 |
bindMenu(isShow: boolean, content: Array | CustomBuilder, options?: MenuOptions) | 给组件绑定菜单,点击后弹出菜单。弹出菜单项支持图标+文本排列和自定义两种功能 | |
bindContextMenu(content: CustomBuilder, responseType: ResponseType, options?: ContextMenuOptions) | 给组件绑定菜单,触发方式为长按或者右键点击,弹出菜单项需要自定义 | |
bindContextMenu(isShown: boolean, content: CustomBuilder, options?: ContextMenuOptions) | 给组件绑定菜单,触发方式为控制绑定的 isShown | |
焦点控制 | focusable(value: boolean) | 设置当前组件是否可以获焦 |
tabIndex(index: number) | 自定义组件 tab 键走焦能力 | |
defaultFocus(value: boolean) | 设置当前组件是否为当前页面上的默认焦点 | |
groupDefaultFocus(value: boolean) | 设置当前组件是否为当前组件所在容器获焦时的默认焦点 | |
focusOnTouch(value: boolean) | 设置当前组件是否支持点击获焦能力 | |
focusBox(style: FocusBoxStyle): T | 设置当前组件系统焦点框样式 | |
requestFocus(value: string): boolean | 方法语句中可使用的全局接口,调用此接口可以主动让焦点转移至参数指定的组件上 | |
focusScopePriority(scopeId: string, priority?: FocusPriority): T | 设置当前组件在指定容器内获焦的优先级。需要配合 focusScopeId 一起使用 | |
focusScopeId(id: string, isGroup?: boolean) | 设置当前容器组件的 id 标识,设置当前容器组件是否为焦点组 | |
focusScopeId(id: string, isGroup?: boolean, arrowStepOut?: boolean) | 设置当前容器组件的 id 标识,设置当前容器组件是否为焦点组 | |
tabStop(isTabStop: boolean) :T | 设置当前容器组件的 tabStop,可决定在走焦时焦点是否会停留在当前容器 | |
悬浮态效果 | hoverEffect(value: HoverEffect) | 设置组件的鼠标悬浮态显示效果 |
组件标识 | id(value: string): T | 组件的唯一标识,唯一性由使用者保证 |
key(value: string): T | 组件的唯一标识,唯一性由使用者保证 | |
getInspectorByKey(id: string): string | 获取指定 id 的组件的所有属性,不包括子组件信息。 此接口仅用于对应用的测试。由于耗时长,不建议使用 | |
getInspectorTree(): Object | 获取组件树及组件属性。此接口仅用于对应用的测试。由于耗时长,不建议使用 | |
sendEventByKey(id: string, action: number, params: string): boolean | 给指定 id 的组件发送事件。此接口仅用于对应用的测试。由于耗时长,不建议使用 | |
sendTouchEvent(event: TouchObject): boolean | 发送触摸事件。此接口仅用于对应用的测试。由于耗时长,不建议使用 | |
sendKeyEvent(event: KeyEvent): boolean | 发送按键事件。此接口仅用于对应用的测试。由于耗时长,不建议使用 | |
sendMouseEvent(event: MouseEvent): boolean | 发送鼠标事件。此接口仅用于对应用的测试。由于耗时长,不建议使用 | |
复用标识 | reuseId(id: string) | 复用标识,用于划分自定义组件的复用组 |
多态样式 | stateStyles(value: StateStyles) | 设置组件不同状态的样式 |
分布式迁移标识 | restoreId(value: number) | 标记支持分布式迁移的组件 Id,用于两端设备组件的配对 |
前景色设置 | foregroundColor(value: ResourceColor | ColoringStrategy) | 设置组件的前景色。当组件未设置前景色,默认继承父组件 |
前景属性设置 | foregroundEffect(options: ForegroundEffectOptions) | 设置组件的前景属性 |
组件内容模糊 | foregroundBlurStyle(value: BlurStyle, options?: ForegroundBlurStyleOptions) | 为当前组件提供内容模糊能力 |
运动模糊 | motionBlur(value: MotionBlurOptions) | 在当前组件由缩放大小或位移变化引起的运动过程中,增加动态模糊效果 |
点击回弹效果 | clickEffect(value: ClickEffect | null) | 设置当前组件点击回弹效果 |
无障碍属性 | accessibilityGroup(value: boolean) | 设置是否启用无障碍分组。启用无障碍分组后该组件及其所有子组件将作为一整个可以选中的组件,无障碍服务将不再关注其子组件内容。 |
accessibilityGroup(isGroup: boolean, accessibilityOptions: AccessibilityOptions) | 设置是否启用无障碍分组,支持优先拼接无障碍文本进行朗读。启用无障碍分组后该组件及其所有子组件将作为一整个可以选中的组件,无障碍服务将不再关注其子组件内容 | |
accessibilityText(value: string) | 设置无障碍文本。当组件不包含文本属性时,开发人员可通过设置无障碍文本属性,使不包含文字信息的组件能够播报无障碍文本的内容 | |
accessibilityText(text: Resource) | 设置无障碍文本,支持通过 Resource 引用资源文件。当组件不包含文本属性时,开发人员可通过设置无障碍文本属性,使不包含文字信息的组件能够播报无障碍文本的内容 | |
accessibilityDescription(value: string) | 设置无障碍说明。该属性用于为用户进一步说明当前组件,开发人员可为组件设置相对较详细的解释文本,帮助用户理解将要执行的操作 | |
accessibilityDescription(description: Resource) | 设置无障碍说明,支持通过 Resource 引用资源文件。该属性用于为用户进一步说明当前组件,开发人员可为组件设置相对较详细的解释文本,帮助用户理解将要执行的操作 | |
accessibilityLevel(value: string) | 设置无障碍重要性。该属性用于控制某个组件是否可被无障碍辅助服务所识别 | |
accessibilityVirtualNode(builder: CustomBuilder) | 设置无障碍虚拟子节点。对自绘制组件传入一个自定义的 CustomBuilder,该 CustomBuilder 中的组件在后端仅做布局不做显示,辅助应用获取无障碍节点信息时会返回 CustomBuilder 中的节点信息 | |
accessibilityChecked(isCheck: boolean) | 无障碍节点是否选中的状态维护,用于支持多选的情况使用,表示组件是否被选中 | |
accessibilitySelected(isSelect: boolean) | 无障碍节点是否选中的状态维护,用于支持单选的情况使用,表示组件是否被选中 | |
accessibilityTextHint(value: string) | 设置组件的文本提示信息,供无障碍辅助应用查询 | |
动态属性设置 | attributeModifier(modifier: AttributeModifier<T>) | 动态设置组件的属性方法 |
applyNormalAttribute(instance: T) : void | 组件普通状态时的样式 | |
applyPressedAttribute(instance: T) : void | 组件按压状态的样式 | |
applyFocusedAttribute(instance: T) : void | 组件获焦状态的样式 | |
applyDisabledAttribute(instance: T) : void | 组件禁用状态的样式 | |
applySelectedAttribute(instance: T) : void | 组件选中状态的样式 | |
动态手势设置 | gestureModifier(modifier: GestureModifier) | 动态设置组件绑定的手势 |
applyGesture(event: UIGestureEvent): void | 组件需要绑定的手势 | |
外描边设置 | outline(value: OutlineOptions) | 统一外描边样式设置接口 |
outlineStyle(value: OutlineStyle | EdgeOutlineStyles) | 设置元素的外描边样式 | |
outlineWidth(value: Dimension | EdgeOutlineWidths) | 设置元素的外描边宽度 | |
outlineColor(value: ResourceColor | EdgeColors) | 设置元素的外描边颜色 | |
outlineRadius(value: Dimension | OutlineRadiuses) | 设置元素的外描边圆角半径 | |
视效设置 | visualEffect(effect: VisualEffect): T | 设置非滤镜视觉效果 |
backgroundFilter(filter: Filter): T | 设置背景滤镜视觉效果 | |
foregroundFilter(filter: Filter): T | 设置前景滤镜(内容)视觉效果 | |
compositingFilter(filter: Filter): T | 设置合成滤镜视觉效果 | |
自定义绘制设置 | drawModifier(modifier: DrawModifier | undefined) | 设置组件的自定义绘制修改器 |
drawFront?(drawContext: DrawContext): void | 自定义绘制前景的接口,若重载该方法则可进行前景的自定义绘制 | |
drawContent?(drawContext: DrawContext): void | 自定义绘制内容的接口,若重载该方法可进行内容的自定义绘制,会替换组件原本的内容绘制函数 | |
drawBehind?(drawContext: DrawContext): void | 自定义绘制背景的接口,若重载该方法则可进行背景的自定义绘制 | |
invalidate(): void | 主动触发重绘的接口,开发者无需也无法重载,调用会触发所绑定组件的重绘 | |
自定义内容 | contentModifier(modifier:ContentModifier<T>) | 定制内容区的方法 |
applyContent() : WrappedBuilder<[T]> | 定制内容区的 Builder | |
自定义属性设置 | customProperty(name: string, value: Optional<Object>) | 设置组件的自定义属性。自定义组件不支持设置自定义属性 |
触摸交互控制 | responseRegion(value: Array | Rectangle) | 设置一个或多个触摸热区 |
hitTestBehavior(value: HitTestMode) | 设置组件的触摸测试类型 | |
模态转场设置 | bindContentCover(isShow: Optional<boolean>, builder: CustomBuilder, options?: ContentCoverOptions) | 给组件绑定全屏模态页面,点击后显示模态页面。模态页面内容自定义,显示方式可设置无动画过渡,上下切换过渡以及透明渐变过渡方式 |
bindSheet(isShow: Optional<boolean>, builder: CustomBuilder, options?: SheetOptions) | 给组件绑定半模态页面,点击后显示模态页面 | |
隐私遮罩 | obscured(reasons: Array<ObscuredReasons>) | 设置组件内容的遮罩类型 |
文本通用 ⭐ | fontColor(value: ResourceColor) | 设置字体颜色 |
fontSize(value: number | string | Resource) | 设置字体大小 | |
fontStyle(value: FontStyle) | 设置字体样式 | |
fontWeight(value: number | FontWeight | string) | 设置文本的字体粗细,设置过大可能会在不同字体下有截断 | |
fontFamily(value: string | Resource) | 设置字体列表 | |
lineHeight(value: number | string | Resource) | 设置文本的文本行高,设置值不大于 0 时,不限制文本行高,自适应字体大小 | |
decoration(value: DecorationStyleInterface) | 设置文本装饰线样式及其颜色 | |
拖拽控制 | allowDrop(value: Array | null) | 设置该组件上允许落入的数据类型 |
draggable(value: boolean) | 设置该组件是否允许进行拖拽 | |
dragPreview(value: CustomBuilder | DragItemInfo | string) | 设置组件拖拽过程中的预览图 | |
dragPreview(preview: CustomBuilder | DragItemInfo | string, config?: PreviewConfiguration):T | 自定义组件拖拽过程中的预览图,仅用于设置浮起效果或者禁用浮起效果 | |
dragPreviewOptions(value: DragPreviewOptions, options?: DragInteractionOptions) | 设置拖拽过程中背板图处理模式及数量角标的显示。不支持 onItemDragStart 拖拽方式 | |
安全区域 | expandSafeArea(types?: Array<SafeAreaType>, edges?: Array<SafeAreaEdge>) | 控制组件扩展其安全区域 |
setKeyboardAvoidMode(value: KeyboardAvoidMode): void | 控制虚拟键盘抬起时页面的避让模式 | |
getKeyboardAvoidMode(): KeyboardAvoidMode | 返回虚拟键盘抬起时的页面避让模式 | |
组件内容填充方式 | renderFit(fitMode: RenderFit) | 设置宽高动画过程中的组件内容填充方式 |
事件独占控制 | monopolizeEvents(monopolize: boolean) | 设置组件是否独占事件 |
鼠标光标控制 | setCursor(value: PointerStyle): void | 更改当前的鼠标光标样式 |
restoreDefault(): void | 将鼠标光标恢复成默认的箭头光标样式 | |
特效绘制合并 | useEffect(value: boolean) | 用于对背景模糊等特效进行绘制合并 |
useEffect(useEffect: boolean, effectType: EffectType) | 用于设置组件是否应用窗口定义的效果模板 |