NavType.SerializableType

public class NavType.SerializableType<D extends Serializable> extends NavType

Object
   ↳ NavType
     ↳ NavType.SerializableType
Known direct subclasses
NavType.EnumType

EnumType is used for NavArguments holding enum values.


SerializableType is used for Serializable NavArguments. For handling Enums you must use EnumType instead.

Null values are supported. Default values in Navigation XML files are not supported.

See also
NavType.EnumType

Summary

Public fields

boolean

Check if an argument with this type can hold a null value.

@NonNull String

The name of this type.

Public constructors

Constructs a NavType that supports a given Serializable type.

Public methods

boolean
@Nullable D
get(@NonNull Bundle bundle, @NonNull String key)

Get a value of this type from the bundle

int
@NonNull D
void
put(@NonNull Bundle bundle, @NonNull String key, @NonNull D value)

Put a value of this type in the bundle

Inherited methods

From class NavType

Public fields

isNullableAllowed

@NonNull
public boolean isNullableAllowed

Check if an argument with this type can hold a null value.

Returns
boolean

Returns true if this type allows null values, false otherwise.

name

@NonNull
public @NonNull String name

The name of this type.

This is the same value that is used in Navigation XML argType attribute.

Returns
@NonNull String

name of this type

Public constructors

SerializableType

public final <D extends Serializable> SerializableType(@NonNull Class<@NonNull D> type)

Constructs a NavType that supports a given Serializable type.

Parameters
@NonNull Class<@NonNull D> type

class that is a subtype of Serializable

Public methods

equals

@NonNull
public boolean equals(@Nullable Object other)

get

@Nullable
public D get(@NonNull Bundle bundle, @NonNull String key)

Get a value of this type from the bundle

Parameters
@NonNull Bundle bundle

bundle to get value from

@NonNull String key

bundle key

Returns
D

value of this type

hashCode

@NonNull
public int hashCode()

parseValue

@NonNull
public D parseValue(@NonNull String value)
Throws
kotlin.UnsupportedOperationException

since Serializables do not support default values

put

@NonNull
public void put(@NonNull Bundle bundle, @NonNull String key, @NonNull D value)

Put a value of this type in the bundle

Parameters
@NonNull Bundle bundle

bundle to put value in

@NonNull String key

bundle key

@NonNull D value

value of this type