Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels) Summary: [Enums](https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType#enumconstants) \| [Methods](https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType#inhmethods)

# MessagePattern.ArgType

*** ** * ** ***


`
public
static
final

enum
MessagePattern.ArgType
`


`


`

`

extends https://developer.android.com/reference/java/lang/Enum<https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType>


`

`


`

|---|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) |||
| ↳ | [java.lang.Enum](https://developer.android.com/reference/java/lang/Enum)\<[android.icu.text.MessagePattern.ArgType](https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType)\> ||
|   | ↳ | android.icu.text.MessagePattern.ArgType |

<br />

*** ** * ** ***

Argument type constants.
Returned by Part.getArgType() for ARG_START and ARG_LIMIT parts.

Messages nested inside an argument are each delimited by MSG_START and MSG_LIMIT,
with a nesting level one greater than the surrounding message.

## Summary

| ### Enum values ||
|---|---|
| `https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType` | `CHOICE` The argument is a ChoiceFormat with one or more ((ARG_INT \| ARG_DOUBLE), ARG_SELECTOR, message) tuples. |
| `https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType` | `NONE` The argument has no specified type. |
| `https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType` | `PLURAL` The argument is a cardinal-number PluralFormat with an optional ARG_INT or ARG_DOUBLE offset (e.g., offset:1) and one or more (ARG_SELECTOR \[explicit-value\] message) tuples. |
| `https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType` | `SELECT` The argument is a SelectFormat with one or more (ARG_SELECTOR, message) pairs. |
| `https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType` | `SELECTORDINAL` The argument is an ordinal-number PluralFormat with the same style parts sequence and semantics as `https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType#PLURAL`. |
| `https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType` | `SIMPLE` The argument has a "simple" type which is provided by the ARG_TYPE part. |

| ### Public methods ||
|---|---|
| ` boolean` | ` https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType#hasPluralStyle()() ` |
| ` static https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType` | ` https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType#valueOf(java.lang.String)(https://developer.android.com/reference/java/lang/String name) ` |
| ` static final https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType` | ` https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType#values()() ` |

### Inherited methods

From class `

https://developer.android.com/reference/java/lang/Enum

` `


final

https://developer.android.com/reference/java/lang/Object` `
https://developer.android.com/reference/java/lang/Enum#clone()()
`

Throws CloneNotSupportedException.


`


final

int` `
https://developer.android.com/reference/java/lang/Enum#compareTo(E)(https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType o)
`

Compares this enum with the specified object for order.


`


final

boolean` `
https://developer.android.com/reference/java/lang/Enum#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object other)
`

Returns true if the specified object is equal to this
enum constant.


`


final

void` `
https://developer.android.com/reference/java/lang/Enum#finalize()()
`

enum classes cannot have finalize methods.


`


final

https://developer.android.com/reference/java/lang/Class<https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType>` `
https://developer.android.com/reference/java/lang/Enum#getDeclaringClass()()
`

Returns the Class object corresponding to this enum constant's
enum type.


`


final

int` `
https://developer.android.com/reference/java/lang/Enum#hashCode()()
`

Returns a hash code for this enum constant.


`


final

https://developer.android.com/reference/java/lang/String` `
https://developer.android.com/reference/java/lang/Enum#name()()
`

Returns the name of this enum constant, exactly as declared in its
enum declaration.


`


final

int` `
https://developer.android.com/reference/java/lang/Enum#ordinal()()
`

Returns the ordinal of this enumeration constant (its position
in its enum declaration, where the initial constant is assigned
an ordinal of zero).


`


https://developer.android.com/reference/java/lang/String` `
https://developer.android.com/reference/java/lang/Enum#toString()()
`

Returns the name of this enum constant, as contained in the
declaration.


`


static

<T extends https://developer.android.com/reference/java/lang/Enum<T>>
T` `
https://developer.android.com/reference/java/lang/Enum#valueOf(java.lang.Class<T>,%20java.lang.String)(https://developer.android.com/reference/java/lang/Class<T> enumClass, https://developer.android.com/reference/java/lang/String name)
`

Returns the enum constant of the specified enum class with the
specified name.


From class `

https://developer.android.com/reference/java/lang/Object

` `


https://developer.android.com/reference/java/lang/Object` `
https://developer.android.com/reference/java/lang/Object#clone()()
`

Creates and returns a copy of this object.


`


boolean` `
https://developer.android.com/reference/java/lang/Object#equals(java.lang.Object)(https://developer.android.com/reference/java/lang/Object obj)
`

Indicates whether some other object is "equal to" this one.


`


void` `
https://developer.android.com/reference/java/lang/Object#finalize()()
`

Called by the garbage collector on an object when garbage collection
determines that there are no more references to the object.


`


final

https://developer.android.com/reference/java/lang/Class<?>` `
https://developer.android.com/reference/java/lang/Object#getClass()()
`

Returns the runtime class of this `Object`.


`


int` `
https://developer.android.com/reference/java/lang/Object#hashCode()()
`

Returns a hash code value for the object.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#notify()()
`

Wakes up a single thread that is waiting on this object's
monitor.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#notifyAll()()
`

Wakes up all threads that are waiting on this object's monitor.


`


https://developer.android.com/reference/java/lang/String` `
https://developer.android.com/reference/java/lang/Object#toString()()
`

Returns a string representation of the object.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#wait(long,%20int)(long timeoutMillis, int nanos)
`

Causes the current thread to wait until it is awakened, typically
by being *notified* or *interrupted*, or until a
certain amount of real time has elapsed.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#wait(long)(long timeoutMillis)
`

Causes the current thread to wait until it is awakened, typically
by being *notified* or *interrupted*, or until a
certain amount of real time has elapsed.


`


final

void` `
https://developer.android.com/reference/java/lang/Object#wait()()
`

Causes the current thread to wait until it is awakened, typically
by being *notified* or *interrupted*.


From interface `

https://developer.android.com/reference/java/lang/Comparable

` `
abstract


int` `
https://developer.android.com/reference/java/lang/Comparable#compareTo(T)(https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType o)
`

Compares this object with the specified object for order.


## Enum values

### CHOICE

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final MessagePattern.ArgType CHOICE
```

The argument is a ChoiceFormat with one or more
((ARG_INT \| ARG_DOUBLE), ARG_SELECTOR, message) tuples.

<br />

### NONE

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final MessagePattern.ArgType NONE
```

The argument has no specified type.

<br />

### PLURAL

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final MessagePattern.ArgType PLURAL
```

The argument is a cardinal-number PluralFormat with an optional ARG_INT or ARG_DOUBLE offset
(e.g., offset:1)
and one or more (ARG_SELECTOR \[explicit-value\] message) tuples.
If the selector has an explicit value (e.g., =2), then
that value is provided by the ARG_INT or ARG_DOUBLE part preceding the message.
Otherwise the message immediately follows the ARG_SELECTOR.

<br />

### SELECT

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final MessagePattern.ArgType SELECT
```

The argument is a SelectFormat with one or more (ARG_SELECTOR, message) pairs.

<br />

### SELECTORDINAL

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final MessagePattern.ArgType SELECTORDINAL
```

The argument is an ordinal-number PluralFormat
with the same style parts sequence and semantics as `https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType#PLURAL`.

<br />

### SIMPLE

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public static final MessagePattern.ArgType SIMPLE
```

The argument has a "simple" type which is provided by the ARG_TYPE part.
An ARG_STYLE part might follow that.

<br />

## Public methods

### hasPluralStyle

Added in [API level 24](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)

```
public boolean hasPluralStyle ()
```

<br />

<br />

| Returns ||
|---|---|
| `boolean` | true if the argument type has a plural style part sequence and semantics, for example `https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType#PLURAL` and `https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType#SELECTORDINAL`. <br /> |

### valueOf

```
public static MessagePattern.ArgType valueOf (String name)
```

<br />

<br />

| Parameters ||
|---|---|
| `name` | `String` <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType` | <br /> |

### values

```
public static final ArgType[] values ()
```

<br />

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/icu/text/MessagePattern.ArgType` | <br /> |