Henning B
09/23/2020, 4:07 PMHenning B
09/23/2020, 4:10 PM@Composable
fun TodoItemInput(onItemComplete: (TodoItem) -> Unit) {
val (text, setText) = remember { mutableStateOf("") }
val (icon, setIcon) = remember { mutableStateOf(TodoIcon.Default)}
val iconsVisible = text.isNotBlank()
val submit = {
onItemComplete(TodoItem(text, icon))
setText("")
setIcon(TodoIcon.Default)
}
Column {
Row(Modifier
.padding(horizontal = 16.dp)
.padding(top = 16.dp)
) {
TodoInputText(
text = text,
onTextChange = setText,
modifier = Modifier
.weight(1f)
.padding(end = 8.dp),
onImeAction = submit
)
TodoEditButton(
onClick = submit,
text = "Add",
modifier = Modifier.align(Alignment.CenterVertically),
enabled = text.isNotBlank()
)
}
if (iconsVisible) {
AnimatedIconRow(icon = icon, onIconChange = setIcon, Modifier.padding(top = 8.dp))
} else {
Spacer(modifier = Modifier.preferredHeight(16.dp))
}
}
}
allan.conda
09/23/2020, 4:16 PMjim
09/23/2020, 5:19 PMHenning B
09/23/2020, 6:49 PM