We just launched Compose Examples featuring over 150+ components! Check it out →

OutlinedSecureTextField

Common

Component in Material Compose

Text fields allow users to enter text into a UI. [OutlinedSecureTextField] is specifically designed for password entry fields. It only supports a single line of content and comes with default settings that are appropriate for entering secure content. Additionally, some context menu actions like cut, copy, and drag are disabled for added security.

Outlined text fields have less visual emphasis than filled text fields. When they appear in places like forms, where many text fields are placed together, their reduced emphasis helps simplify the layout. For a filled version, see [SecureTextField].

Last updated:

Installation

dependencies {
   implementation("androidx.compose.material:material:1.8.0-alpha01")
}

Overloads

@Composable
fun OutlinedSecureTextField(
    state: TextFieldState,
    modifier: Modifier = Modifier,
    enabled: Boolean = true,
    readOnly: Boolean = false,
    textStyle: TextStyle = LocalTextStyle.current,
    label: @Composable (() -> Unit)? = null,
    placeholder: @Composable (() -> Unit)? = null,
    leadingIcon: @Composable (() -> Unit)? = null,
    trailingIcon: @Composable (() -> Unit)? = null,
    isError: Boolean = false,
    inputTransformation: InputTransformation? = null,
    textObfuscationMode: TextObfuscationMode = TextObfuscationMode.RevealLastTyped,
    textObfuscationCharacter: Char = DefaultObfuscationCharacter,
    keyboardOptions: KeyboardOptions = SecureTextFieldKeyboardOptions,
    onKeyboardAction: KeyboardActionHandler? = null,
    shape: Shape = TextFieldDefaults.OutlinedTextFieldShape,
    colors: TextFieldColors = TextFieldDefaults.outlinedTextFieldColors(),
    interactionSource: MutableInteractionSource? = null,
)

Parameters

namedescription
state[TextFieldState] object that holds the internal editing state of this text field.
modifiera [Modifier] for this text field
enabledcontrols the enabled state of the [OutlinedTextField]. When false, the text field will be neither editable nor focusable, the input of the text field will not be selectable, visually text field will appear in the disabled UI state
readOnlycontrols the editable state of the [OutlinedTextField]. When true, the text field can not be modified, however, a user can focus it and copy text from it. Read-only text fields are usually used to display pre-filled forms that user can not edit
textStylethe style to be applied to the input text. The default [textStyle] uses the [LocalTextStyle] defined by the theme
labelthe optional label to be displayed inside the text field container. The default text style for internal [Text] is [Typography.caption] when the text field is in focus and [Typography.subtitle1] when the text field is not in focus
placeholderthe optional placeholder to be displayed when the text field is in focus and the input text is empty. The default text style for internal [Text] is [Typography.subtitle1]
leadingIconthe optional leading icon to be displayed at the beginning of the text field container
trailingIconthe optional trailing icon to be displayed at the end of the text field container
isErrorindicates if the text field's current value is in error. If set to true, the label, bottom indicator and trailing icon by default will be displayed in error color
inputTransformationOptional [InputTransformation] that will be used to transform changes to the [TextFieldState] made by the user. The transformation will be applied to changes made by hardware and software keyboard events, pasting or dropping text, accessibility services, and tests. The transformation will not be applied when changing the [state] programmatically, or when the transformation is changed. If the transformation is changed on an existing text field, it will be applied to the next user edit. the transformation will not immediately affect the current [state].
textObfuscationModethe method used to obscure the input text.
textObfuscationCharacterthe character to use while obfuscating the text. It doesn't have an effect when [textObfuscationMode] is set to [TextObfuscationMode.Visible].
keyboardOptionssoftware keyboard options that contains configuration such as [KeyboardType] and [ImeAction]
onKeyboardActionCalled when the user presses the action button in the input method editor (IME), or by pressing the enter key on a hardware keyboard. By default this parameter is null, and would execute the default behavior for a received IME Action e.g., [ImeAction.Done] would close the keyboard, [ImeAction.Next] would switch the focus to the next focusable item on the screen.
shapethe shape of the text field's border
colors[TextFieldColors] that will be used to resolve color of the text and content (including label, placeholder, leading and trailing icons, border) for this text field in different states. See [TextFieldDefaults.outlinedTextFieldColors]
interactionSourcean optional hoisted [MutableInteractionSource] for observing and emitting [Interaction]s for this text field. You can use this to change the text field's appearance or preview the text field in different states. Note that if null is provided, interactions will still happen internally.
by @alexstyl