鸿蒙OS ComponentContainer

ComponentContainer

java.lang.Object

|—ohos.agp.components.Component

|—|—ohos.agp.components.ComponentContainer

public abstract class ComponentContainer
extends Component
implements ComponentParent

可以包含其他组件(称为子组件)的特殊组件。

此布局基类继承自 Component。

嵌套类摘要

修饰符和类型 描述
static interface ComponentContainer.ArrangeListener 提供自定义组件排列流程的接口。
static class ComponentContainer.LayoutConfig 提供布局参数,例如宽度和高度以及边距。
从类 ohos.agp.components.Component 继承的嵌套类/接口
Component.BindStateChangedListener, Component.CanAcceptScrollListener, Component.ClickedListener, Component.ComponentStateChangedListener, Component.ContourRefreshedListener, Component.DefSpeechEventListener, Component.DoubleClickedListener, Component.DragFeedbackProvider, Component.DraggedListener, Component.DrawTask, Component.EditEventListener, Component.EstimateSizeListener, Component.EstimateSpec, Component.FadeEffectEnum, Component.FocusChangedListener, Component.ForwardHoverListener, Component.ForwardTouchListener, Component.GestureType, Component.HoverEventListener, Component.KeyEventListener, Component.LayoutDirection, Component.LayoutRefreshedListener, Component.LongClickedListener, Component.MeasureSpec, Component.MouseEventListener, Component.MousePointerStyleListener, Component.OnDragListener, Component.RotationEventListener, Component.ScaledListener, Component.ScrolledListener, Component.ShadowDevice, Component.ShadowMode, Component.ShadowSize, Component.SpeechEventListener, Component.TouchEventListener, Component.UnconsumedKeyEventListener, Component.VoiceEvent

字段摘要

修饰符和类型 字段 描述
static int FOCUS_CHILDREN_FIRST 指示此组件在其任何子项之前获得焦点。
static int FOCUS_CHILDREN_HIDE 指示此组件阻止其子级获得焦点,即使它们是可聚焦的。
static int FOCUS_PARENT_FIRST 指示仅当其子组件均未请求焦点时,此组件才获得焦点。
protected ComponentContainer.ArrangeListener mArrangeListener 在排列过程中自定义子组件的排列
从类 ohos.agp.components.Component 继承的字段
ACCESSIBILITY_ADAPTABLE, ACCESSIBILITY_DISABLE, ACCESSIBILITY_ENABLE, AXIS_X, AXIS_Y, CONTOUR_BACKGROUND, CONTOUR_BORDER, CONTOUR_PADDING_BORDER, DEFAULT_SCALE, DRAG_DOWN, DRAG_HORIZONTAL, DRAG_HORIZONTAL_VERTICAL, DRAG_LEFT, DRAG_RIGHT, DRAG_UP, DRAG_VERTICAL, EVENT_TYPE_COMPONENT_ACCESSIBILITY_FOCUSED, EVENT_TYPE_COMPONENT_ACCESSIBILITY_FOCUSED_CLEAR, EVENT_TYPE_COMPONENT_CLICKED, EVENT_TYPE_COMPONENT_FOCUSED, EVENT_TYPE_COMPONENT_LONG_CLICKED, EVENT_TYPE_COMPONENT_SCROLLED, EVENT_TYPE_COMPONENT_SELECTED, EVENT_TYPE_COMPONENT_TEXT_UPDATE, EVENT_TYPE_NOTICE, EVENT_TYPE_NOTIFICATION_STATE_UPDATE, EVENT_TYPE_TOAST_SHOW, EVENT_TYPE_WINDOW_STATE_UPDATE, FOCUS_ADAPTABLE, FOCUS_DISABLE, FOCUS_ENABLE, FOCUS_NEXT, FOCUS_PREVIOUS, FOCUS_SIDE_BOTTOM, FOCUS_SIDE_LEFT, FOCUS_SIDE_RIGHT, FOCUS_SIDE_TOP, HIDE, HORIZONTAL, ID_DEFAULT, INHERITED_MODE, INVISIBLE, mBackgroundElement, mCanvasForTaskOverContent, mCanvasForTaskUnderContent, mComponentParent, mContext, mDrawTaskOverContent, mDrawTaskUnderContent, mEstimateSizeListener, mForegroundElement, mForwardHoverListener, mHoverEventListener, mKeyEventListener, mMouseEventListener, mPosition, mRotationEventListener, mShadowElement, mUnconsumedKeyEventListener, OVAL_MODE, OVAL_SCROLL_BAR_MODE, POSITION_X_INDEX, POSITION_Y_INDEX, RECT_MODE, RECT_SCROLL_BAR_MODE, SCROLL_AUTO_STAGE, SCROLL_IDLE_STAGE, SCROLL_NORMAL_STAGE, UNSPECIFIED_SCROLL_BAR_MODE, VERTICAL, VISIBLE

构造函数摘要

构造函数 描述
ComponentContainer(Context context) 默认构造函数用于使用默认属性集和样式创建 ComponentContainer 实例。
ComponentContainer(Context context, AttrSet attrSet) 用于在 XML 文件解析后使用指定的属性集和默认样式创建 ComponentContainer 实例的构造函数。
ComponentContainer(Context context, AttrSet attrSet, String styleName) 一个构造函数,用于在解析 XML 文件后使用指定的属性集和指定的样式创建一个 ComponentContainer 实例。

方法总结

修饰符和类型 方法 描述
void addComponent(Component childComponent) 通过在内部调用 addComponent(ohos.agp.components.Component,int index) 将组件添加到队列的末尾。
void addComponent(Component childComponent, int index) 将组件添加到指定位置。
void addComponent(Component childComponent, int width, int height) 添加一个组件并设置其宽度和高度。
void addComponent(Component childComponent, int index, ComponentContainer.LayoutConfig layoutConfig) 添加组件并设置其布局参数和位置。
void addComponent(Component childComponent, ComponentContainer.LayoutConfig layoutConfig) 添加一个组件并设置其布局参数。
ComponentContainer.LayoutConfig createLayoutConfig(Context context, AttrSet attrSet) 使用子组件的属性集创建布局参数。
protected void dispatchRestoreState(PlainArraySequenceable stateContainer) 分发状态恢复过程来恢复该组件及其子组件的状态。
protected void dispatchSaveState(PlainArraySequenceable stateContainer) 分发状态保存过程,保存该组件及其子组件的状态。
<T extends Component>T findComponentById(int id) 查找具有给定 ID 的组件。
ComponentHolder findComponentHolderById(int resId) 使用资源 id 获取 componentHolder 的实例。
boolean getAutoLayout() 获取是否启用自动布局。
int getChildCount() 获取子组件的数量。
int getChildIndex(Component component) 查询子组件的位置。
Component getComponentAt(int index) 使用索引获取子组件。
ComponentTransition getComponentTransition() 获取组件的 ComponentTransition 对象。
int getFocusOrder() 获取此组件相对于其后代的可聚焦性。
LayoutManager getLayoutManager() 获取一个LayoutManager对象,用于对相关子组件进行布局。
void informConfigurationChanged(Configuration config) 调度配置更改事件。
boolean isClipToChildBoundsEnabled() 获取子组件的绘制范围是否可以超出子组件的边界。
boolean isClipToPaddingBoundsEnabled() 获取组件的绘制范围是否可以超出其填充边界的边界。
boolean isTouchEventSplitable() 获取此 ComponentContainer 的触摸事件是否可以拆分。
void moveChildToFront(Component component) 将子组件置于最前面。
boolean onDrag(Component component, DragEvent event) 在将拖动事件分派到组件时调用。
void removeAllComponents() 清除 ComponentContainer 管理的所有组件。
void removeComponent(Component component) 从父组件中移除子组件。
void removeComponentAt(int index) 从组件列表中的指定位置移除组件。
void removeComponentById(int id) 根据 ID 移除组件。
void removeComponents(int start, int count) 从组件列表中的指定位置移除所有组件。
protected void setArrangeListener(ComponentContainer.ArrangeListener listener) 在组件容器的排列过程中添加一个监听器。
void setAutoLayout(boolean autoLayout) 设置是否启用自动布局。
void setAutoLayout(boolean autoLayout, int columnType) 设置是否启用自动布局并设置列类型。
void setClipToChildBoundsEnabled(boolean enable) 控制子组件的绘制范围是否可以超出子组件的边界。
void setClipToPaddingBoundsEnabled(boolean enable) 控制组件的绘制范围是否可以超出其填充边界的边界。
void setComponentTransition(ComponentTransition componentTransition) 设置一个 ComponentTransition 对象。
void setFocusOrder(int focusability) 设置此组件相对于其后代的可聚焦性。
void setLayoutManager(LayoutManager layoutManager) 设置一个 LayoutManager 实例,用于布局相关子组件。
void setTouchEventSplitable(boolean enable) 控制是否将拆分触摸事件分派给多个子组件。
ComponentContainer.LayoutConfig verifyLayoutConfig(ComponentContainer.LayoutConfig config) 根据当前布局类型验证布局参数。
从类 ohos.agp.components.Component 继承的方法
addDrawTask, addDrawTask, addScrolledListener, announceAccessibility, arrange, bindCornerMark, callOnClick, canScroll, clearFocus, createAnimatorProperty, disableFadeEffect, draw, enableCornerMark, enableFadeEffect, enableSaveState, enableScrollBar, estimateSize, executeDoubleClick, executeLongClick, findFocus, findNextFocusableComponent, findRequestNextFocus, getAccessibility, getAccessibilityDescription, getAlpha, getAltitude, getBackgroundElement, getBaseLine, getBottom, getBoundaryFadeEffectBottomRate, getBoundaryFadeEffectLeftRate, getBoundaryFadeEffectRightRate, getBoundaryFadeEffectTopRate, getCenterZoomFactor, getCentralScrollMode, getClickedListener, getClipEnabled, getComponentDescription, getComponentMinSize, getComponentParent, getComponentPosition, getComponentSize, getComponentStateChangedListener, getComponentTreeObserver, getContentEnable, getContentPosition, getContentPositionX, getContentPositionY, getContext, getContour, getContourRefreshedListener, getCornerMark, getDragAcceptAngle, getDraggedListener, getEditEventListener, getEstimatedHeight, getEstimatedWidth, getFadeEffectBoundaryWidth, getFadeEffectColor, getFocusable, getFocusBorderEnable, getFocusBorderPadding, getFocusBorderRadius, getFocusBorderWidth, getForegroundElement, getForegroundGravity, getForwardHoverListener, getForwardTouchListener, getGesturePriority, getHeight, getHorizontalPadding, getHorizontalPosition, getHoverEventListener, getId, getKeyEventListener, getLayoutConfig, getLayoutDirection, getLayoutDirectionResolved, getLayoutRefreshedListener, getLeft, getLocationOnScreen, getMarginBottom, getMarginLeft, getMarginRight, getMargins, getMarginsLeftAndRight, getMarginsTopAndBottom, getMarginTop, getMatrix, getMinHeight, getMinWidth, getMode, getModeResolved, getMouseEventListener, getMousePointerStyleListener, getName, getPadding, getPaddingBottom, getPaddingEnd, getPaddingLeft, getPaddingRight, getPaddingStart, getPaddingTop, getPivot, getPivotX, getPivotY, getResourceManager, getRight, getRotation, getRotationEventListener, getRotationSensitivity, getScale, getScaledListener, getScaleX, getScaleY, getScrollbarBackgroundColor, getScrollbarColor, getScrollbarFadingDelay, getScrollbarFadingDuration, getScrollBarMode, getScrollbarRadius, getScrollbarRoundRect, getScrollbarStartAngle, getScrollbarSweepAngle, getScrollbarThickness, getScrollState, getScrollValue, getSelfVisibleRect, getShadowColor, getSpeechEventListener, getTag, getTop, getTouchEventListener, getTransitionSymbol, getTranslation, getTranslationX, getTranslationY, getTranslationZ, getUserNextFocus, getVerticalPadding, getVerticalPosition, getVisibility, getVisibleRectOnScreen, getWidth, getWindowVisibleRect, hasFocus, hasFocusedEffect, hasOverlaps, hideFocusBorder, invalidate, isBoundaryFadeEffectEnable, isBoundToWindow, isClickable, isClipToContourEnabled, isComponentDisplayed, isEnabled, isFadeEffected, isFocusable, isFocused, isIdentityMatrix, isLongClickOn, isPressed, isRtl, isSaveStateEnabled, isScrollbarFadingOn, isScrollBarOn, isScrollbarOverlapEnabled, isSelected, isSoundEnable, isTouchFocusable, isVibrationEffectEnabled, notifyAccessibility, onAttributeConfigChanged, onRestoreState, onRtlChanged, onSaveState, performScale, playSound, postLayout, refreshContour, release, removeBindStateChangedListener, removeScrolledListener, requestFocus, requestForceForwardTouchEvent, restoreComponentTreeState, saveComponentTreeState, scrollBy, scrollTo, setAccessibility, setAccessibilityDescription, setAlpha, setAltitude, setBackground, setBindStateChangedListener, setBottom, setBoundaryFadeEffectEnable, setCanAcceptScrollListener, setCenterZoomFactor, setCentralScrollMode, setClickable, setClickedListener, setClipEnabled, setClipToContourEnabled, setComponentDescription, setComponentMinSize, setComponentPosition, setComponentPosition, setComponentSize, setComponentStateChangedListener, setContentEnable, setContentPosition, setContentPositionX, setContentPositionY, setContour, setContourRefreshedListener, setDoubleClickedListener, setDragAcceptAngle, setDraggedListener, setEditEventListener, setEnabled, setEstimatedSize, setEstimateSizeListener, setFadeEffectBoundaryWidth, setFadeEffectColor, setFocusable, setFocusBorderEnable, setFocusBorderPadding, setFocusBorderRadius, setFocusBorderRadius, setFocusBorderWidth, setFocusChangedListener, setFocusedEffect, setForeground, setForegroundGravity, setForwardHoverListener, setForwardTouchListener, setGesturePriority, setHeight, setHorizontalPadding, setHorizontalPosition, setHoverEventListener, setId, setKeyEventListener, setLayoutConfig, setLayoutDirection, setLayoutRefreshedListener, setLeft, setLongClickable, setLongClickedListener, setMarginBottom, setMarginLeft, setMarginRight, setMarginsLeftAndRight, setMarginsTopAndBottom, setMarginTop, setMinHeight, setMinWidth, setMode, setMouseEventListener, setMousePointerStyleListener, setName, setOnDragListener, setPadding, setPaddingBottom, setPaddingLeft, setPaddingRelative, setPaddingRight, setPaddingTop, setPivot, setPivot, setPivotX, setPivotY, setPosition, setPositionX, setPositionY, setPressState, setRight, setRotation, setRotationEventListener, setRotationSensitivity, setScale, setScaledListener, setScaleX, setScaleY, setScrollbarBackgroundColor, setScrollbarColor, setScrollbarFadingDelay, setScrollbarFadingDuration, setScrollbarFadingEnabled, setScrollBarMode, setScrollbarOverlapEnabled, setScrollbarRadius, setScrollbarRoundRect, setScrollbarStartAngle, setScrollbarSweepAngle, setScrollbarThickness, setScrolledListener, setSelected, setShadowColor, setShadowStyle, setSoundEnable, setSpeechEventListener, setTag, setTop, setTouchEventListener, setTouchFocusable, setTransitionSymbol, setTranslation, setTranslationX, setTranslationY, setTranslationZ, setUnconsumedKeyEventListener, setUserNextFocus, setVerticalPadding, setVerticalPosition, setVibrationEffectEnabled, setVisibility, setWidth, showFocusBorder, simulateClick, simulateDrag, startDragAndDrop, subscribeVoiceEvents, unsubscribeVoiceEvents
从接口 ohos.agp.components.ComponentParent 继承的方法
getComponentParent, postLayout
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

字段详细信息

FOCUS_CHILDREN_FIRST

public static final int FOCUS_CHILDREN_FIRST

指示此组件在其任何子项之前获得焦点。

FOCUS_CHILDREN_HIDE

public static final int FOCUS_CHILDREN_HIDE

指示此组件阻止其子级获得焦点,即使它们是可聚焦的。

FOCUS_PARENT_FIRST

public static final int FOCUS_PARENT_FIRST

指示仅当其子组件均未请求焦点时,此组件才获得焦点。

mArrangeListener

protected ComponentContainer.ArrangeListener mArrangeListener

在排列过程中自定义子组件的排列

构造函数详细信息

ComponentContainer

public ComponentContainer(Context context)

默认构造函数用于使用默认属性集和样式创建 ComponentContainer 实例。

参数:

参数名称 参数描述
context 指示应用程序上下文。

ComponentContainer

public ComponentContainer(Context context, AttrSet attrSet)

用于在 XML 文件解析后使用指定的属性集和默认样式创建 ComponentContainer 实例的构造函数。

参数:

参数名称 参数描述
context 指示应用程序上下文。
attrSet 指示要使用的属性集。

ComponentContainer

public ComponentContainer(Context context, AttrSet attrSet, String styleName)

一个构造函数,用于在解析 XML 文件后使用指定的属性集和指定的样式创建一个 ComponentContainer 实例。

参数:

参数名称 参数描述
context 指示应用程序上下文。
attrSet 指示要使用的属性集。
styleName 指示要使用的样式名称。

方法详情

verifyLayoutConfig

public ComponentContainer.LayoutConfig verifyLayoutConfig(ComponentContainer.LayoutConfig config)

根据当前布局类型验证布局参数。

指定者:

接口 ComponentParent 中的 verifyLayoutConfig

参数:

参数名称 参数描述
config 指示要转换为 ComponentContainer 实例的一组布局参数。

返回:

返回 LayoutConfig 实例,它表示布局参数。

createLayoutConfig

public ComponentContainer.LayoutConfig createLayoutConfig(Context context, AttrSet attrSet)

使用子组件的属性集创建布局参数。

参数:

参数名称 参数描述
context 指示应用程序上下文。
attrSet 表示属性集。

返回:

返回创建的布局参数。

setArrangeListener

protected void setArrangeListener(ComponentContainer.ArrangeListener listener)

在组件容器的排列过程中添加一个监听器。

参数:

参数名称 参数描述
listener 指定组件容器的排列侦听器。

findComponentById

public <T extends Component> T findComponentById(int id)

查找具有给定 ID 的组件。

如果当前组件本身的 ID 与给定 ID 匹配,则返回当前组件。 否则,返回 null。

覆盖:

组件类中的 findComponentById

参数:

参数名称 参数描述
id 表示组件的唯一标识符。

返回:

返回 ID 与给定 ID 匹配的组件; 如果没有找到组件,则返回 null。

addComponent

public void addComponent(Component childComponent)

通过在内部调用 addComponent(ohos.agp.components.Component,int index) 将组件添加到队列的末尾。

参数:

参数名称 参数描述
childComponent 指示要添加的子组件。

addComponent

public void addComponent(Component childComponent, int width, int height)

添加一个组件并设置其宽度和高度。

参数:

参数名称 参数描述
childComponent 指示要添加的子组件。
width 指示子组件的宽度,以像素为单位。
height 指示子组件的高度,以像素为单位。

addComponent

public void addComponent(Component childComponent, ComponentContainer.LayoutConfig layoutConfig)

添加一个组件并设置其布局参数。

参数:

参数名称 参数描述
childComponent 指示要添加的子组件。
layoutConfig 表示子组件的布局参数。

addComponent

public void addComponent(Component childComponent, int index, ComponentContainer.LayoutConfig layoutConfig)

添加组件并设置其布局参数和位置。

参数:

参数名称 参数描述
childComponent 指示要添加的子组件。
index 指示添加子组件的位置。 值 -1 表示将子组件添加到队列的末尾。
layoutConfig 表示子组件的布局参数。

addComponent

public void addComponent(Component childComponent, int index)

将组件添加到指定位置。

如果没有为该子组件设置布局参数,则使用 ComponentContainer 的默认布局参数。

参数:

参数名称 参数描述
childComponent 指示要添加的子组件。
index 指示添加子组件的位置。 值 -1 表示将组件添加到末尾。 如果提供的数字大于 getChildCount() 的值,则返回运行时异常。

getComponentAt

public Component getComponentAt(int index)

使用索引获取子组件。

ComponentContainer 使用内部列表来存储子组件信息。 您可以使用索引获取指定的子组件。

参数:

参数名称 参数描述
index 表示子组件的索引。

返回:

返回子组件。

getChildIndex

public int getChildIndex(Component component)

查询子组件的位置。

指定者:

接口 ComponentParent 中的 getChildIndex

参数:

参数名称 参数描述
component 指示要查询的子组件。

返回:

返回一个正整数,表示子组件在父组件中的位置; 如果子组件不包含在父组件中,则返回 -1。

findComponentHolderById

public ComponentHolder findComponentHolderById(int resId)

使用资源 id 获取 componentHolder 的实例。

覆盖:

组件类中的 findComponentHolderById

参数:

参数名称 参数描述
resId componentHolder 的资源 ID。

返回:

componentHolder 的实例。

removeComponent

public void removeComponent(Component component)

从父组件中移除子组件。

指定者:

接口 ComponentParent 中的 removeComponent

参数:

参数名称 参数描述
component 指示要移除的子组件。

removeComponentAt

public void removeComponentAt(int index)

从组件列表中的指定位置移除组件。

指定者:

接口 ComponentParent 中的 removeComponentAt

参数:

参数名称 参数描述
index 指示要移除的组件的位置索引。

removeComponentById

public void removeComponentById(int id)

根据 ID 移除组件。

参数:

参数名称 参数描述
id 表示组件ID。

removeComponents

public void removeComponents(int start, int count)

从组件列表中的指定位置移除所有组件。

指定者:

接口 ComponentParent 中的 removeComponents

参数:

参数名称 参数描述
start 表示第一个移除的组件的位置索引。
count 表示要移除的组件数量。

removeAllComponents

public void removeAllComponents()

清除 ComponentContainer 管理的所有组件。

moveChildToFront

public void moveChildToFront(Component component)

将子组件置于最前面。

指定者:

接口 ComponentParent 中的 moveChildToFront

参数:

参数名称 参数描述
component 指示要放在前面的组件。

getChildCount

public int getChildCount()

获取子组件的数量。

返回:

返回子组件的数量。

informConfigurationChanged

public void informConfigurationChanged(Configuration config)

从类复制的描述:组件

调度配置更改事件。 事件处理逻辑由 Component.onAttributeConfigChanged(ohos.global.configuration.Configuration) 实现。

覆盖:

类 Component 中的 informConfigurationChanged

参数:

参数名称 参数描述
config 表示最新配置。

getFocusOrder

public int getFocusOrder()

获取此组件相对于其后代的可聚焦性。

目前,这仅影响非触摸焦点更改。

返回:

返回可聚焦性,可以是 FOCUS_PARENT_FIRST、FOCUS_CHILDREN_FIRST 或 FOCUS_CHILDREN_HIDE。

setFocusOrder

public void setFocusOrder(int focusability)

设置此组件相对于其后代的可聚焦性。

目前,这仅影响非触摸焦点更改。

参数:

参数名称 参数描述
focusability 表示可聚焦性,可以是 FOCUS_PARENT_FIRST、FOCUS_CHILDREN_FIRST 或 FOCUS_CHILDREN_HIDE。

setAutoLayout

public void setAutoLayout(boolean autoLayout)

设置是否启用自动布局。

参数:

参数名称 参数描述
autoLayout 指示自动布局状态。 true 表示启用自动布局,false 表示禁用它。

setAutoLayout

public void setAutoLayout(boolean autoLayout, int columnType)

设置是否启用自动布局并设置列类型。

参数:

参数名称 参数描述
autoLayout true 表示启用自动布局,false 表示禁用它。
columnType 指示要使用的列类型。

getAutoLayout

public boolean getAutoLayout()

获取是否启用自动布局。

返回:

如果启用了自动布局,则返回 true; 否则返回 false。

onDrag

public boolean onDrag(Component component, DragEvent event)

在将拖动事件分派到组件时调用。

指定者:

接口 ComponentParent 中的 onDrag

覆盖:

类 Component 中的 onDrag

参数:

参数名称 参数描述
component 表示组件。
event 表示拖动事件。

返回:

如果正确处理了拖动事件,则返回 true; 否则返回 false。

setLayoutManager

public void setLayoutManager(LayoutManager layoutManager)

设置一个 LayoutManager 实例,用于布局相关子组件。

参数:

参数名称 参数描述
layoutManager 指示要设置的布局管理器。

getLayoutManager

public LayoutManager getLayoutManager()

获取一个LayoutManager对象,用于对相关子组件进行布局。

返回:

返回此组件容器的 LayoutManager 对象。

setComponentTransition

public void setComponentTransition(ComponentTransition componentTransition)

设置一个 ComponentTransition 对象。

参数:

参数名称 参数描述
componentTransition 指示要使用的 ComponentTransition 对象。 此参数不能为空。

getComponentTransition

public ComponentTransition getComponentTransition()

获取组件的 ComponentTransition 对象。

返回:

返回 ComponentTransition 对象。

setClipToChildBoundsEnabled

public void setClipToChildBoundsEnabled(boolean enable)

控制子组件的绘制范围是否可以超出子组件的边界。

参数:

参数名称 参数描述
enable true 表示允许子组件的绘制范围超出自己的边界,false 表示相反。

isClipToChildBoundsEnabled

public boolean isClipToChildBoundsEnabled()

获取子组件的绘制范围是否可以超出子组件的边界。

返回:

返回子组件的绘制范围是否可以超出子组件的边界。

setClipToPaddingBoundsEnabled

public void setClipToPaddingBoundsEnabled(boolean enable)

控制组件的绘制范围是否可以超出其填充边界的边界。

参数:

参数名称 参数描述
enable 值 true 表示允许组件的绘制范围超出其填充边界的边界,false 表示相反。

isClipToPaddingBoundsEnabled

public boolean isClipToPaddingBoundsEnabled()

获取组件的绘制范围是否可以超出其填充边界的边界。

返回:

返回组件的绘制范围是否可以超出其填充边界的边界。

setTouchEventSplitable

public void setTouchEventSplitable(boolean enable)

控制是否将拆分触摸事件分派给多个孩子。 默认情况下禁用该功能。

参数:

参数名称 参数描述
enable 值 true 表示允许将拆分触摸事件分派给多个孩子,false 表示不允许。

isTouchEventSplitable

public boolean isTouchEventSplitable()

获取此 ComponentContainer 的触摸事件是否可以拆分。

返回:

如果派发到此 ComponentContainer 的触摸事件可以拆分到多个子级,则为 true。

dispatchSaveState

protected void dispatchSaveState(PlainArraySequenceable stateContainer)

分发状态保存过程,保存该组件及其子组件的状态。

覆盖:

组件类中的 dispatchSaveState

参数:

参数名称 参数描述
stateContainer 指示保存状态信息的容器。

dispatchRestoreState

protected void dispatchRestoreState(PlainArraySequenceable stateContainer)

分发状态恢复过程来恢复该组件及其子组件的状态。

覆盖:

组件类中的 dispatchRestoreState

参数:

参数名称 参数描述
stateContainer 表示保存待恢复状态信息的容器。
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《鸿蒙OS ComponentContainer》
文章链接:https://zhuji.vsping.com/314270.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。