ソースコード
@Composable
fun T9Keypad() {
val keys = listOf(
listOf("1", ""), listOf("2", "ABC"), listOf("3", "DEF"),
listOf("4", "GHI"), listOf("5", "JKL"), listOf("6", "MNO"),
listOf("7", "PQRS"), listOf("8", "TUV"), listOf("9", "WXYZ"),
listOf("*", ""), listOf("0", "+"), listOf("#", "")
)
Column {
for (row in keys.chunked(3)) {
Row(
modifier = Modifier
.fillMaxWidth()
.padding(vertical = 2.dp),
horizontalArrangement = Arrangement.SpaceEvenly
) {
row.forEach { (num, letters) ->
Column(
horizontalAlignment = Alignment.CenterHorizontally,
modifier = Modifier
.size(64.dp)
.border(1.dp, Color.White)
.padding(4.dp)
) {
Text(text = num, color = Color.White, fontSize = 20.sp)
if (letters.isNotEmpty()) {
Text(text = letters, color = Color.Gray, fontSize = 10.sp)
}
}
}
}
}
}
}
軽く解説
・3×4 のテンキーUI
・数字とアルファベット(ABCなど)を表示(矢印などを追加してPC用のテンキーにしてもいいかも)
・クリック等処理部分は未実装