阅读(1657) (7)

鸿蒙OS IntentParams

2022-04-15 15:52:35 更新

IntentParams

java.lang.Object

|---ohos.aafwk.content.IntentParams

public class IntentParams
extends Object
implements Sequenceable

存储传递给ability的额外参数信息。

IntentParams 中的参数信息以键值对的形式保存。 键是 String 类型,值保存为 Object 类型的对象。 您可以使用 setParam(java.lang.String,java.lang.Object) 方法来设置参数。

嵌套类摘要

从接口 ohos.utils.Sequenceable 继承的嵌套类/接口
Sequenceable.ProducerT

字段摘要

修饰符和类型 字段 描述
static Sequenceable.ProducerIntentParams PRODUCER 从 Parcel 创建一个 IntentParams 实例。

构造函数摘要

构造函数 描述
IntentParams() 用于创建空 IntentParams 实例的构造函数。
IntentParams(IntentParams intentParams) 用于使用现有 IntentParams 对象的参数创建 IntentParams 实例的构造函数。

方法总结

修饰符和类型 方法 描述
ClassLoader getClassLoader() 获取用于Sequenceable类型的自定义参数的ClassLoader。
Object getParam(String key) 根据给定的键获取参数值。
boolean hasParam(String key) 检查 Intent 是否包含给定的键。
boolean isEmpty() 检查此 IntentParams 对象是否不包含参数。
SetString keySet() 获取所有参数的key集合。
boolean marshalling(Parcel out) 将 IntentParams 对象编组为 Parcel。
void remove(String key) 删除与给定键匹配的参数。
void setClassLoader(ClassLoader classLoader) 设置用于 Sequenceable 类型的自定义参数的 ClassLoader。
<T> void setParam(String key, T value) 以键值对格式设置参数。
int size() 获取此 IntentParams 对象中包含的参数数量。
boolean unmarshalling(Parcel in) 从 Parcel 中解组 IntentParams 对象。
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
从接口 ohos.utils.Sequenceable 继承的方法
hasFileDescriptor

字段详细信息

PRODUCER

public static final Sequenceable.ProducerIntentParams PRODUCER

从 Parcel 创建一个 IntentParams 实例。

构造函数详细信息

IntentParams

public IntentParams()

用于创建空 IntentParams 实例的构造函数。

IntentParams

public IntentParams(IntentParams intentParams)

用于使用现有 IntentParams 对象的参数创建 IntentParams 实例的构造函数。

参数:

参数名称 参数描述
intentParams 指示现有的 IntentParams 对象。

方法详情

getClassLoader

public ClassLoader getClassLoader()

获取用于Sequenceable类型的自定义参数的ClassLoader。

返回:

返回使用的 ClassLoader 对象。

setClassLoader

public void setClassLoader(ClassLoader classLoader)

设置用于 Sequenceable 类型的自定义参数的 ClassLoader。

您应该在 Intent 中设置 Sequenceable 类型的自定义参数之前调用此方法。

参数:

参数名称 参数描述
classLoader 指示要设置的 ClassLoader 对象。

marshalling

public boolean marshalling(Parcel out)

将 IntentParams 对象编组为 Parcel。

IntentParams 中的键值对是单独编组的。 如果任何键值对无法编组,则返回 false。

指定者:

接口 Sequenceable 中的编组

参数:

参数名称 参数描述
out 指示用于编组的 Parcel 对象。

返回:

如果编组成功,则返回 true; 否则返回 false。

Throws:

Throw名称 Throw描述
IllegalArgumentException 如果参数值无效,则引发此异常。

unmarshalling

public boolean unmarshalling(Parcel in)

从 Parcel 中解组 IntentParams 对象。

IntentParams 中的键值对是单独解组的。 如果任何键值对解组失败,则返回 false。

指定者:

在接口 Sequenceable 中解组

参数:

参数名称 参数描述
in 指示用于解组的 Parcel 对象。

返回:

如果解组成功,则返回 true; 否则返回 false。

Throws:

Throw名称 Throw描述
IllegalArgumentException 如果参数值无效,则引发此异常。

setParam

public <T> void setParam(String key, T value)

以键值对格式设置参数

类型参数:

类型参数名称 类型参数描述
T 表示参数值的数据类型。 它必须是 Object 的子类。

参数:

参数名称 参数描述
key 表示与参数匹配的键
value 表示参数的值

isEmpty

public boolean isEmpty()

检查此 IntentParams 对象是否不包含参数。

返回:

如果此对象不包含任何参数,则返回 true; 否则返回 false。

size

public int size()

获取此 IntentParams 对象中包含的参数数量。

返回:

返回参数的数量

remove

public void remove(String key)

删除与给定键匹配的参数。

参数:

参数名称 参数描述
key 表示与要删除的参数匹配的键。

getParam

public Object getParam(String key)

根据给定的键获取参数值。

参数:

参数名称 参数描述
key 表示与参数匹配的键。

返回:

返回与给定键匹配的值。

hasParam

public boolean hasParam(String key)

检查 Intent 是否包含给定的键。

参数:

参数名称 参数描述
key 表示要检查的键

返回:

如果 Intent 包含键,则返回 true; 否则返回 false。

keySet

public SetString keySet()

获取所有参数的key集合。

返回:

返回一组键