java.lang.Object
|---ohos.agp.components.BaseItemProvider
public abstract class BaseItemProvider
extends Object
提供 BaseItemProvider 对象以将 ComponentProvider 项与组件的基本数据相关联。
提供者提供对数据项的访问并为数据集中的每个项创建一个组件。 当数据集中的内容发生变化时,通知订阅者响应变化,并在屏幕上同步刷新更新的内容。
构造函数 | 描述 |
---|---|
BaseItemProvider() | 构造函数 |
修饰符和类型 | 方法 | 描述 |
---|---|---|
void | addDataSubscriber(DataSetSubscriber subscriber) | 添加数据集订阅者。 |
abstract Component | getComponent(int position, Component convertComponent, ComponentContainer parent) | 获取在数据集中指定位置显示数据的组件。 |
int | getComponentTypeCount() | 获取数据集中所有项目的组件类型数。 |
abstract int | getCount() | 获取提供程序中的数据项总数。 |
TextFilter | getFilter() | 获取文本过滤器。 |
abstract Object | getItem(int position) | 获取数据集中指定位置的数据项。 |
int | getItemComponentType(int position) | 根据位置获取数据集中数据项的组件类型。 |
abstract long | getItemId(int position) | 获取数据集中指定位置的数据项的行ID。 |
void | notifyDataChanged() | 刷新已更新数据项的组件。 |
void | notifyDataInvalidated() | 当提供者数据无效时调用。 |
void | notifyDataSetItemChanged(int position) | 刷新已更新数据项的组件。 |
void | notifyDataSetItemInserted(int position) | 刷新指定数据项已更改的组件。 |
void | notifyDataSetItemRangeChanged(int startPos, int countItems) | 刷新从给定位置开始的指定数量的数据项已更改的组件。 |
void | notifyDataSetItemRangeInserted(int startPos, int countItems) | 刷新从给定位置开始插入了指定数量的数据项的组件。 |
void | notifyDataSetItemRangeRemoved(int startPos, int countItems) | 刷新已删除从给定位置开始的指定数量数据项的组件。 |
void | notifyDataSetItemRemoved(int position) | 刷新已从中删除指定数据项的组件。 |
void | onItemMoved(int from, int to) | 当组件项应移动到数据集中的其他位置时在内部调用。 |
void | removeDataSubscriber(DataSetSubscriber subscriber) | 删除数据集订阅者。 |
void | setFilter(TextFilter filter) | 设置文本过滤器。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
public BaseItemProvider()
构造函数
public abstract int getCount()
获取提供程序中的数据项总数。
返回:
返回提供程序中的数据项总数。
public abstract Object getItem(int position)
获取数据集中指定位置的数据项。
参数:
参数名称 | 参数描述 |
---|---|
position | 表示数据项在数据集中的位置。 |
返回:
返回指定位置的数据项。
public abstract long getItemId(int position)
获取数据集中指定位置的数据项的行ID。
参数:
参数名称 | 参数描述 |
---|---|
position | 表示数据项的行ID的位置。 |
返回:
返回指定位置的数据项的行 ID。
public abstract Component getComponent(int position, Component convertComponent, ComponentContainer parent)
获取在数据集中指定位置显示数据的组件。
参数:
参数名称 | 参数描述 |
---|---|
position | 表示组件在数据集中的位置。 |
convertComponent | 表示要重用的前一个组件。 如果没有此类组件,则此参数可以为 null。 |
parent | 表示与要获取的组件匹配的父组件。 |
返回:
返回与指定位置的数据项匹配的组件。
public int getItemComponentType(int position)
根据位置获取数据集中数据项的组件类型。
每次将组件布局添加到数据集时,都必须添加组件类型以匹配组件布局。 组件类型取值范围从 0 到 getComponentTypeCount() 的结果减 1。例如,包含一个键的组件布局匹配组件类型值 0,包含两个键的组件布局匹配组件类型值 1。
参数:
参数名称 | 参数描述 |
---|---|
position | 指示组件项在提供程序数据集中的位置。 |
返回:
返回组件类型。
public int getComponentTypeCount()
获取数据集中所有项目的组件类型数。 默认情况下,组件类型的数量为 1。
返回:
返回数据集中所有项目的组件类型数。
public void notifyDataChanged()
刷新已更新数据项的组件。
使用 DataSetPublisher#notifyChanged() 方法通知每个注册的订阅者。
public void notifyDataInvalidated()
当提供者数据无效时调用。
使用 DataSetPublisher#informInvalidated() 方法通知每个注册的订阅者。
public void notifyDataSetItemChanged(int position)
刷新已更新数据项的组件。
使用 DataSetPublisher#notifyItemChanged(int) 方法通知每个注册的订阅者。
参数:
参数名称 | 参数描述 |
---|---|
position | 表示项目在数据集中的位置。 |
public void notifyDataSetItemInserted(int position)
刷新指定数据项已更改的组件。
要通知数据更改订阅者,请调用 DataSetPublisher#notifyItemChanged(int)。
参数:
参数名称 | 参数描述 |
---|---|
position | 指示更改的数据项在数据集中的位置。 |
public void notifyDataSetItemRemoved(int position)
刷新已从中删除指定数据项的组件。
要通知数据更改订阅者,请调用 DataSetPublisher#notifyItemRemoved(int)。
参数:
参数名称 | 参数描述 |
---|---|
position | 表示被移除的数据项在数据集中的位置。 |
public void notifyDataSetItemRangeChanged(int startPos, int countItems)
刷新从给定位置开始的指定数量的数据项已更改的组件。
要通知数据更改订阅者,请调用 DataSetPublisher#notifyItemRangeChanged(int, int)。
参数:
参数名称 | 参数描述 |
---|---|
startPos | 指示已更改的第一个数据项的位置。 |
countItems | 指示已更改的数据项数。 |
public void notifyDataSetItemRangeInserted(int startPos, int countItems)
刷新从给定位置开始插入了指定数量的数据项的组件。
要通知数据更改订阅者,请调用 DataSetPublisher#notifyItemRangeInserted(int, int)。
参数:
参数名称 | 参数描述 |
---|---|
startPos | 指示已插入的第一个数据项的位置。 |
countItems | 表示已插入的数据项数。 |
public void notifyDataSetItemRangeRemoved(int startPos, int countItems)
刷新已删除从给定位置开始的指定数量数据项的组件。
要通知数据更改订阅者,请调用 DataSetPublisher#notifyItemRangeRemoved(int, int)。
参数:
参数名称 | 参数描述 |
---|---|
startPos | 指示已删除的第一个数据项的位置。 |
countItems | 表示已删除的数据项数。 |
public final void addDataSubscriber(DataSetSubscriber subscriber)
添加数据集订阅者。
参数:
参数名称 | 参数描述 |
---|---|
subscriber | 指示订阅者在数据集中的内容发生更改时通知。 |
public final void removeDataSubscriber(DataSetSubscriber subscriber)
删除数据集订阅者。
参数:
参数名称 | 参数描述 |
---|---|
subscriber | 指示订阅者在数据集中的内容发生更改时通知。 |
public void setFilter(TextFilter filter)
设置文本过滤器。
参数:
参数名称 | 参数描述 |
---|---|
filter | 表示文本过滤器。 |
public TextFilter getFilter()
获取文本过滤器。
返回:
返回文本过滤器。
public void onItemMoved(int from, int to)
当组件项应移动到数据集中的其他位置时在内部调用。
参数:
参数名称 | 参数描述 |
---|---|
from | 表示组件项在数据集中的原始位置。 |
to | 表示组件项在数据集中的目标位置。 |
CornerMark.CornerMarkCleanerjava.lang.Object |---ohos.agp.components.CornerMark.CornerMarkCleanerprotected static class ...
本章将介绍如何在系统中下载,安装和设置 Apache Pig 。先决条件在你运行Apache Pig之前,必须在系统上安装好Hadoop和Java。因此...
SPLIT 运算符用于将关系拆分为两个或多个关系。语法下面给出了 SPLIT 运算符的语法。grunt SPLIT Relation1_name INTO Relation2...
简介Hadoop Distributed File System,分布式文件系统架构Block数据块;基本存储单位,一般大小为64M(配置大的块主要是因为:1)...
native-component原生组件小程序中的部分组件是由客户端创建的原生组件,这些组件有:cameracanvasinput(仅在focus时表现为原生...
wx.offVoIPChatInterrupted(function callback)基础库 2.9.0 开始支持,低版本需做兼容处理。取消监听被动断开实时语音通话事件...
关键词:case,选择器case语句是一种多路条件分支的形式,可以解决if语句中有多个条件选项时使用不方便的问题。case语句case语句...
Component(Object object)创建自定义组件,接受一个Object类型的参数。参数Object object定义段类型是否必填描述最低版本propert...
微信小程序form基础库 1.0.0 开始支持,低版本需做兼容处理。表单。将组件内的用户输入的switchinputcheckboxsliderradiopicker...