MainActivity.kt
// TextField
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
DefaultTheme {
MyTextField3()
}
}
}
}
@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun MyTextField1(){
var textState by remember { mutableStateOf("Hello") }
TextField(
value = textState,
onValueChange = {
// textState = "이것은 변화"
textState = it
},
label = {
Text(text = "입력하는 공간")
}
)
}
@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun MyTextField2(){
var textState by remember { mutableStateOf("Hello") }
OutlinedTextField(
value = textState,
onValueChange = {
// textState = "이것은 변화"
textState = it
},
label = {
Text(text = "입력하는 공간")
}
)
}
// TextField 부분에 뭔가 입력하고
// 버튼을 클릭하면
// 밑에 Text부분에 입력한 값이 나오도록 하는 기능
@OptIn(ExperimentalMaterial3Api::class)
@Composable
fun MyTextField3(){
// 입력한 부분
var textState by remember { mutableStateOf("") }
// 결과값 부분
var enteredText by remember { mutableStateOf("") }
Column(
modifier = Modifier.fillMaxSize(),
verticalArrangement = Arrangement.Center, // 세로로 중앙정렬
horizontalAlignment = Alignment.CenterHorizontally // 가로로 중앙정렬
) {
TextField(
value = textState,
onValueChange = { textState = it},
modifier = Modifier.fillMaxWidth()
)
Button(
onClick = {
enteredText = textState
},
modifier = Modifier.fillMaxWidth()
) {
Text(text = "입력하기")
}
Text(
text = "결과값 텍스트 : ${enteredText}"
)
}
}
@Preview(showBackground = true)
@Composable
fun GreetingPreview() {
DefaultTheme {
MyTextField3()
}
}