Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Also in [S Extensions 13](https://developer.android.com/sdkExtensions) Summary: [Ctors](https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder#pubctors) \| [Methods](https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder#pubmethods) \| [Inherited Methods](https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder#inhmethods)

# FormWidgetInfo.Builder

*** ** * ** ***

` public static final class FormWidgetInfo.Builder `   
` extends https://developer.android.com/reference/java/lang/Object ` ` `

|---|---|
| [java.lang.Object](https://developer.android.com/reference/java/lang/Object) ||
| ↳ | android.graphics.pdf.models.FormWidgetInfo.Builder |

<br />

*** ** * ** ***

Builder for `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo`

## Summary

| ### Public constructors ||
|---|---|
| ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder#Builder(int,%20int,%20android.graphics.Rect,%20java.lang.String,%20java.lang.String)(int widgetType, int widgetIndex, https://developer.android.com/reference/android/graphics/Rect widgetRect, https://developer.android.com/reference/java/lang/String textValue, https://developer.android.com/reference/java/lang/String accessibilityLabel) ` Creates an instance |

| ### Public methods ||
|---|---|
| ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo` | ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder#build()() ` Builds a `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo` |
| ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder#setEditableText(boolean)(boolean editableText) ` Sets whether this widget contains editable text. |
| ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder#setFontSize(float)(float fontSize) ` Sets the font size for this widget. |
| ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder#setListItems(java.util.List<android.graphics.pdf.models.ListItem>)(https://developer.android.com/reference/java/util/List<https://developer.android.com/reference/android/graphics/pdf/models/ListItem> listItems) ` Sets the choice options for this widget. |
| ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder#setMaxLength(int)(int maxLength) ` Sets the maximum character length of input text supported by this widget. |
| ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder#setMultiLineText(boolean)(boolean multiLineText) ` Sets whether this widget supports multi-line text input. |
| ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder#setMultiSelect(boolean)(boolean multiSelect) ` Sets whether this widget supports multiple choice selections. |
| ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | ` https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder#setReadOnly(boolean)(boolean readOnly) ` Sets whether this widget is read-only |

### Inherited methods

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*.

## Public constructors

### Builder

Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Also in [S Extensions 13](https://developer.android.com/sdkExtensions)

```
public Builder (int widgetType, 
                int widgetIndex, 
                Rect widgetRect, 
                String textValue, 
                String accessibilityLabel)
```

Creates an instance

<br />

| Parameters ||
|---|---|
| `widgetType` | `int`: the type of widget. Value is one of the following: - `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo#WIDGET_TYPE_UNKNOWN` - `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo#WIDGET_TYPE_PUSHBUTTON` - `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo#WIDGET_TYPE_CHECKBOX` - `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo#WIDGET_TYPE_RADIOBUTTON` - `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo#WIDGET_TYPE_COMBOBOX` - `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo#WIDGET_TYPE_LISTBOX` - `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo#WIDGET_TYPE_TEXTFIELD` - `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo#WIDGET_TYPE_SIGNATURE` |
| `widgetIndex` | `int`: the index of the widget in the page's "Annot" array in the PDF. Value is 0 or greater <br /> |
| `widgetRect` | `Rect`: the `https://developer.android.com/reference/android/graphics/Rect` in page coordinates occupied by the widget. This value cannot be `null`. <br /> |
| `textValue` | `String`: the widget's text value. This value cannot be `null`. <br /> |
| `accessibilityLabel` | `String`: the field's accessibility label. This value cannot be `null`. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/NullPointerException` | if any of `widgetRect`, `textValue`, or `accessibilityLabel` are null |

## Public methods

### build

Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Also in [S Extensions 13](https://developer.android.com/sdkExtensions)

```
public FormWidgetInfo build ()
```

Builds a `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo`

<br />

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo` | This value cannot be `null`. <br /> |

### setEditableText

Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Also in [S Extensions 13](https://developer.android.com/sdkExtensions)

```
public FormWidgetInfo.Builder setEditableText (boolean editableText)
```

Sets whether this widget contains editable text. Only supported for comboboxes and text fields

<br />

| Parameters ||
|---|---|
| `editableText` | `boolean` <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | This value cannot be `null`. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException` | if this is not a combobox or text field type widget |

### setFontSize

Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Also in [S Extensions 13](https://developer.android.com/sdkExtensions)

```
public FormWidgetInfo.Builder setFontSize (float fontSize)
```

Sets the font size for this widget. Only supported for text fields and comboboxes

<br />

| Parameters ||
|---|---|
| `fontSize` | `float`: Value is 0.0f or greater <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | This value cannot be `null`. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException` | if this is not a combobox or text field, or if a negative font size is supplied |

### setListItems

Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Also in [S Extensions 13](https://developer.android.com/sdkExtensions)

```
public FormWidgetInfo.Builder setListItems (List<ListItem> listItems)
```

Sets the choice options for this widget. Only supported for comboboxes and list boxes

<br />

| Parameters ||
|---|---|
| `listItems` | `List`: This value cannot be `null`. <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | This value cannot be `null`. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException` | if this is not a combobox or list box |
| `https://developer.android.com/reference/java/lang/NullPointerException` | if `choiceOptions` is null |

### setMaxLength

Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Also in [S Extensions 13](https://developer.android.com/sdkExtensions)

```
public FormWidgetInfo.Builder setMaxLength (int maxLength)
```

Sets the maximum character length of input text supported by this widget. Only supported for text fields

<br />

| Parameters ||
|---|---|
| `maxLength` | `int`: Value is 0 or greater <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | This value cannot be `null`. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException` | if this is not a text field, or if a negative max length is supplied |

### setMultiLineText

Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Also in [S Extensions 13](https://developer.android.com/sdkExtensions)

```
public FormWidgetInfo.Builder setMultiLineText (boolean multiLineText)
```

Sets whether this widget supports multi-line text input. Only supported for text fields

<br />

| Parameters ||
|---|---|
| `multiLineText` | `boolean` <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | This value cannot be `null`. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException` | if this is not a text field |

### setMultiSelect

Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Also in [S Extensions 13](https://developer.android.com/sdkExtensions)

```
public FormWidgetInfo.Builder setMultiSelect (boolean multiSelect)
```

Sets whether this widget supports multiple choice selections. Only supported for list boxes

<br />

| Parameters ||
|---|---|
| `multiSelect` | `boolean` <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | This value cannot be `null`. <br /> |

| Throws ||
|---|---|
| `https://developer.android.com/reference/java/lang/IllegalArgumentException` | if this is not a list box |

### setReadOnly

Added in [API level 35](https://developer.android.com/guide/topics/manifest/uses-sdk-element#ApiLevels)  
Also in [S Extensions 13](https://developer.android.com/sdkExtensions)

```
public FormWidgetInfo.Builder setReadOnly (boolean readOnly)
```

Sets whether this widget is read-only

<br />

| Parameters ||
|---|---|
| `readOnly` | `boolean` <br /> |

| Returns ||
|---|---|
| `https://developer.android.com/reference/android/graphics/pdf/models/FormWidgetInfo.Builder` | This value cannot be `null`. <br /> |