显示有关另一种能力的简要信息。
根据提供或显示内容的人员,AbilityForm 的呈现涉及以下两个角色:
提供要显示的 AbilityForm 内容。供应商控制显示内容和逻辑。
显示 AbilityForm 内容。客户端控制 AbilityForm 布局。
客户端首次显示 AbilityForm 的典型交互过程如下:
供应商提供以下功能:
客户端提供以下功能:
修饰符和类型 | 类 | 描述 |
---|---|---|
静态界面 | AbilityForm.OnAcquiredCallback | 提供在客户端上获取或销毁由供应商创建的 AbilityForm 实例时调用的回调方法。 |
从接口 ohos.utils 继承的嵌套类/接口。Sequenceable |
---|
Sequenceable.Producer < T > |
修饰符和类型 | 领域 | 描述 |
---|---|---|
静态string | PERMISSION_REQUIRE_FORM | 指示获得 AbilityForm 的权限。 |
静态 Sequenceable.Producer < AbilityForm > | PRODUCER | 从 Parcel 创建一个 AbilityForm 实例。 |
建设者 | 描述 |
---|---|
AbilityForm(int resId,Context context) | 用于在 AbilityForm 供应商上创建 AbilityForm 实例的构造函数。 |
修饰符和类型 | 方法 | 描述 |
---|---|---|
Component | getComponent() | 从供应商那里获得 AbilityForm 的根组件。 |
Intent | getFullPageIntent() | 获取开始全页显示的Intent。 |
布尔值 | marshalling(Parcel out) | 将 AbilityForm 对象编组到一个Parcel中。 |
布尔值 | registerViewListener(int viewId,ViewListener 监听器) | 由 AbilityForm 供应商注册一个侦听器,以侦听AbilityForm 客户端上组件的点击事件。 |
void | sendActions(ComponentProvider remoteViewActions) | 将在 ComponentProvider 对象中配置的供应商操作发送给客户端。 |
void | setFullPageIntent(IntentIntent) | 设置用于开始全页显示的 Intent。 |
void | setText(int viewId,string文本) | 设置要在 AbilityForm 供应商上为特定组件显示的文本。 |
void | setTextSize(int viewId,int size) | 设置 AbilityForm 供应商上特定组件的字体大小。 |
void | startFullPage() | 由 AbilityForm 客户端切换到 AbilityForm 的全页显示。 |
布尔值 | unmarshalling(Parcel in) | 从宗地中解组 AbilityForm 对象。 |
从类 java.lang 继承的方法。object |
---|
clone,equals,finalize,getClass,hashCode,notify,notifyAll,toString,wait,[wait](/harmonyos/harmonyos-5rua3cmd.html,[wait](/harmonyos/harmonyos-5rua3cmd.html) |
从接口 ohos.utils 继承的方法。Sequenceable |
---|
hasFileDescriptor |
公共静态最终string PERMISSION_REQUIRE_FORM
指示获得 AbilityForm 的权限。
用作 AbilityForm 客户端的应用程序(例如主屏幕)必须具有此权限。此权限不适用于第三方应用程序。
也可以看看:
公共静态最终 Sequenceable.Producer < AbilityForm > PRODUCER
从 Parcel 创建一个 AbilityForm 实例 。
公共 AbilityForm(int resId,Context上下文)
用于在 AbilityForm 供应商上创建 AbilityForm 实例的构造函数。
供应商使用此构造函数来创建实例以响应 Ability#onCreateForm()方法。
参数:
参数名称 | 参数说明 |
---|---|
resId | 指示 AbilityForm 的布局资源文件的ID。 |
语境 | 指示 Ability 上下文,该上下文用于 AbilityForm 供应商的异步消息处理。 |
公共布尔编组(Parcel)
将 AbilityForm 对象编组到一个Parcel中。
指定者:
在 Sequenceable 接口中 marshalling
参数:
参数名称 | 参数说明 |
---|---|
out | 指示要编组的宗地对象。 |
返回值:
如果封送成功,则返回 true;否则,返回 false。否则返回 false。
public boolean unmarshalling(Parcel in)
Unmarshals an AbilityForm object from a Parcel.
指定者:
在接口 Sequenceable中 unmarshalling 参数:
参数名称 | 参数说明 |
---|---|
in | 指示要解组的宗地对象。 |
返回值:
如果解组成功,则返回 true;否则,返回 true。否则返回 false。
公共Intent getFullPageIntent()
获取开始全页显示的 Intent。
您可以使用诸如 Ability.LayoutParamsHelper#setX(int)之类的帮助器方法在获取的 Intent中设置整个页面的显示区域,然后使用 AbilityForm#setFullPageIntent(Intent)方法将修改后的Intent传递回 AbilityForm。
返回值:
返回开始全页显示的Intent。
也可以看看:
startFullPage(),setFullPageIntent(Intent)
public void setText(int viewId,string文本)
设置要在 AbilityForm 供应商上为特定组件显示的文本。
参数:
参数名称 | 参数说明 |
---|---|
viewId | 标识要设置的组件。该值不能为负数。 |
文本 | 指示要显示的文本。 |
public void setTextSize((int viewId,int size)
设置AbilityForm供应商上特定组件的字体大小。
参数:
参数名称 | 参数说明 |
---|---|
viewId | 标识要设置的组件。该值不能为负数。 |
尺寸 | 指示要设置的字体大小。该值必须大于0。 |
公共无效sendActions((ComponentProvider remoteViewActions)
将在ComponentProvider对象中配置的供应商操作发送给客户端。
然后,AbilityForm框架将这些操作应用于客户端,以使这些操作生效。
参数:
参数名称 | 参数说明 |
---|---|
remoteViewActions | 指示要发送给客户端的操作。 |
Throws:
Throws名称 | Throws说明 |
---|---|
IllegalStateException | 如果客户端存根处于错误状态 |
公共Component getComponent()
从供应商那里获得AbilityForm的根组件。
返回值:
返回根组件。
public boolean registerViewListener(int viewId,ViewListener 监听器)
由 AbilityForm 供应商注册一个侦听器,以侦听 AbilityForm 客户端上组件的点击事件。
参数:
参数名称 | 参数说明 |
---|---|
viewId | 标识要侦听的组件。 |
听众 | 指示单击组件时要调用的回调方法。 |
返回值:
如果注册成功,则返回 true;否则,返回 false。否则返回 false。
public void startFullPage()
由 AbilityForm 客户端切换到 AbilityForm 的全页显示。
通常,AbilityForm 客户端通过执行以下步骤来启动整个页面的显示:
也可以看看:
setFullPageIntent(Intent),getFullPageIntent()
公共无效 setFullPageIntent(IntentIntent)
设置用于开始全页显示的 Intent。
调用后 AbilityForm#getFullPageIntent()以获得Intent用于开始全页显示时,客户端可设定Intent参数,然后调用当前方法传递Intent回 AbilityForm。
参数:
参数名称 | 参数说明 |
---|---|
Intent | 指示开始全页显示的Intent。 |
也可以看看:
startFullPage(),getFullPageIntent()