Аннотация Composable
Аннотация @Composable
ставится перед функцией Kotlin,
которая рисует UI из других composable.
Без неё компилятор не примет вызовы
Row,
Text
и похожих функций внутри тела.
Такие функции вызывают только
из composable-контекста:
setContent,
другой @Composable
или
setContent
в тесте.
У аннотации нет параметров для таблицы.
Синтаксис
@Composable
fun NoteLine(text: String) {
Text(text = text)
}
Пример
Давайте вынесем строку abcde в composable-функцию:
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
@Composable
fun AbcdeLine() {
Text(text = "abcde")
}
@Composable
fun NoteScreen() {
AbcdeLine()
}
На экране NoteScreen покажет Text
со строкой "abcde" из дочернего composable.
Пример
Давайте передать параметр в composable:
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
@Composable
fun CodeLine(value: String) {
Text(text = value)
}
@Composable
fun PairScreen() {
CodeLine(value = "abcde")
CodeLine(value = "12345")
}
На экране две строки "abcde"
и "12345" пойдут друг за другом.
Смотрите также
-
аннотация
Preview,
предпросмотр composable в Android Studio -
функция
setContent,
корень composable у activity -
функция
Column,
типичный composable внутри разметки -
метод
setContent,
composable в UI-тесте