Search code examples
androidtextfieldandroid-jetpack-composeandroid-jetpack-compose-text

Resizeable BasicTextField in Jetpack Compose


Is there a way to produce a resizeable BasicTextField in Jetpack Compose, so that its width would wrap text size when a user types in or deletes characters? They've solved a similar problem for flutter, but I didn't find out how to solve this for Compose. Flutter - how to make TextField width fit its text ("wrap content")

var text: String by rememberSaveable { mutableStateOf("") }
BasicTextField(
   value = text,
   onValueChange = {
       text = it
   },
   modifier = Modifier.wrapContentWidth()
)

unfortunately, wrapContentWidth() doesn't work here.


Solution

  • Well, looks like width(IntrinsicSize.Min) solves this problem:

    var text: String by rememberSaveable { mutableStateOf("") }
    BasicTextField(
       value = text,
       onValueChange = {
           text = it
       },
       modifier = Modifier.width(IntrinsicSize.Min)
    )