鸿蒙OS开发文档 鸿蒙OS PageSliderProvider

2024-02-25 开发教程 鸿蒙OS开发文档 匿名 8

PageSliderProvider

java.lang.Object
|---ohos.agp.components.PageSliderProvider

public abstract class PageSliderProvider
extends Object

提供页面适配器来管理页面组件。

该类提供页面项管理功能,例如计算可用组件的数量,并在指定位置创建组件。 您需要继承并实现 PageSliderProvider 以在不同的页面上显示多个组件。

Since:

3

字段摘要

修饰符和类型字段描述
static intPOSITION_INVALID表示容器中的页面无效。
static intPOSITION_REMAIN表示页面在容器中的位置保持不变。

构造函数摘要

构造函数描述
PageSliderProvider()

方法总结

修饰符和类型方法描述
voidaddDataSubscriber(DataSetSubscriber subscriber)为当前的 Page Slider Provider 添加订阅者。
abstract ObjectcreatePageInContainer(ComponentContainer container, int position)在指定位置创建页面。
abstract voiddestroyPageFromContainer(ComponentContainer container, int position, Object object)销毁容器中的指定页面。
abstract intgetCount()获取当前适配器中可用组件的数量。
intgetPageIndex(Object object)获取容器中对象的索引。
StringgetPageTitle(int position)获取页面在指定位置的标题。
abstract booleanisPageMatchToObject(Component page, Object object)检查组件是否与从 createPageInContainer(ohos.agp.components.ComponentContainer,int) 返回的特定对象相关联。
voidnotifyDataChanged()通知页面滑块提供程序数据集更改。
voidonUpdateFinished(ComponentContainer componentContainer)通知容器页面更新已完成。
voidremoveDataSubscriber(DataSetSubscriber subscriber)从当前 PageSliderProvider 注销订阅者。
voidstartUpdate(ComponentContainer container)收到通知,指示显示的页面上即将发生更新。
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

字段详细信息

POSITION_INVALID

public static final int POSITION_INVALID

表示容器中的页面无效。

POSITION_REMAIN

public static final int POSITION_REMAIN

表示页面在容器中的位置保持不变。

构造函数详细信息

PageSliderProvider

public PageSliderProvider()

方法详情

getCount

public abstract int getCount()

获取当前适配器中可用组件的数量。

返回:

返回可用组件的数量。

createPageInContainer

public abstract Object createPageInContainer(ComponentContainer container, int position)

在指定位置创建页面。

页面被添加到容器中的指定位置。

参数:

参数名称参数描述
container指示要显示 PageSliderProvider 的容器。
position表示容器中的指定位置。

返回:

返回显示的页面。

destroyPageFromContainer

public abstract void destroyPageFromContainer(ComponentContainer container, int position, Object object)

销毁容器中的指定页面。

参数:

参数名称参数描述
container指示页面适配器所属的容器。
position表示容器中的指定位置。
object指示要销毁的页面。

isPageMatchToObject

public abstract boolean isPageMatchToObject(Component page, Object object)

检查组件是否与从 createPageInContainer(ohos.agp.components.ComponentContainer,int) 返回的特定对象相关联。

参数:

参数名称参数描述
page表示要检查的组件。
object指示与要检查的组件关联的对象。

返回:

组件是否与对象关联。

startUpdate

public void startUpdate(ComponentContainer container)

收到通知,指示显示的页面上即将发生更新。

参数:

参数名称参数描述
container指示页面适配器所属的ComponentContainer。

onUpdateFinished

public void onUpdateFinished(ComponentContainer componentContainer)

通知容器页面更新已完成。

调用此方法时,必须确保所有页面都已按要求添加到容器中或从容器中移除。

参数:

参数名称参数描述
componentContainer指示页面适配器所属的容器。

Since:

4

getPageIndex

public int getPageIndex(Object object)

获取容器中对象的索引。

参数:

参数名称参数描述
object表示用于生成组件的对象。

返回:

返回容器中对象的索引; 如果对象索引没有改变,则返回 POSITION_REMAIN; 如果容器中不存在对象,则返回 POSITION_INVALID。

Since:

4

notifyDataChanged

public void notifyDataChanged()

通知页面滑块提供程序数据集更改。

当要显示的数据发生变化时调用该方法。

Since:

4

addDataSubscriber

public final void addDataSubscriber(DataSetSubscriber subscriber)

为当前的 PageSliderProvider 添加订阅者。

订阅者接收与数据更改相关的回调。

参数:

参数名称参数描述
subscriber表示订阅者。

Throws:

Throw名称Throw描述
IllegalArgumentException如果参数值为 null,则引发此异常。
IllegalStateException如果已添加对象,则抛出此异常

Since:

4

removeDataSubscriber

public final void removeDataSubscriber(DataSetSubscriber subscriber)

从当前 PageSliderProvider 注销订阅者。

参数:

参数名称参数描述
subscriber表示要移除的订阅者。

Throws:

Throw名称Throw描述
IllegalArgumentException如果参数值为 null,则引发此异常。
IllegalStateException如果对象已被移除,则抛出此异常

Since:

4

getPageTitle

public String getPageTitle(int position)

获取页面在指定位置的标题。

该方法可用于 PageSliderProvider 对象获取指定页面的标题。

参数:

参数名称参数描述
position指示页面在 PageSliderProvider 中的位置。

返回:

返回页面标题。