Text fields allow users to enter text into a UI.
PasswordTextField
@Composable
fun PasswordTextField() {
var passwordHidden by rememberSaveable { mutableStateOf(true) }
SecureTextField(
state = rememberTextFieldState(),
label = { Text("Enter password") },
textObfuscationMode =
if (passwordHidden) TextObfuscationMode.RevealLastTyped
else TextObfuscationMode.Visible,
trailingIcon = {
IconButton(onClick = { passwordHidden = !passwordHidden }) {
val visibilityIcon =
if (passwordHidden) Icons.Filled.Visibility else Icons.Filled.VisibilityOff
// Provide localized description for accessibility services
val description = if (passwordHidden) "Show password" else "Hide password"
Icon(imageVector = visibilityIcon, contentDescription = description)
}
},
)
}