OutlinedTextField je variant TextField s obrysom namiesto pozadia. Vizualne je čistejší:
import androidx.compose.desktop.ui.tooling.preview.Preview
import androidx.compose.foundation.layout.*
import androidx.compose.material3.*
import androidx.compose.runtime.*
import androidx.compose.ui.Modifier
import androidx.compose.ui.unit.dp
import androidx.compose.ui.window.Window
import androidx.compose.ui.window.application
@Composable
fun OutlinedTextFieldExample() {
var name by remember { mutableStateOf("") }
var email by remember { mutableStateOf("") }
MaterialTheme {
Surface {
Column(modifier = Modifier.padding(16.dp), verticalArrangement = Arrangement.spacedBy(8.dp)) {
OutlinedTextField(
value = name,
onValueChange = { name = it },
label = { Text("Meno") }
)
OutlinedTextField(
value = email,
onValueChange = { email = it },
label = { Text("Email") },
singleLine = true
)
Text("Meno: $name")
Text("Email: $email")
}
}
}
}
fun main() = application {
Window(onCloseRequest = ::exitApplication, title = "OutlinedTextField") {
OutlinedTextFieldExample()
}
}
| Vlastnosť | TextField | OutlinedTextField | | ——— | ——— | —————– | | Pozadie | Sivé | Biele | | Obrys | Žiadny | Viditeľný | | Použitie | Hlavné formuláre | Vedľajšie polia |
Oba typy majú rovnaké parametre. Výber závisí len od vizuálneho štýlu.
Vytvor formulár s OutlinedTextField pre meno a e-mail.
Obe hodnoty ulož do samostatných stavových premenných a zobraz ich pod formulárom.
Pre e-mail nastav singleLine = true a pridaj zmysluplné labely.