Класс Painter
Класс Painter - абстракция,
которая умеет рисовать себя в заданный
прямоугольник на холсте Compose.
Экземпляр передают в параметр painter
функции Image.
Из ресурсов Painter чаще всего
получают через
painterResource,
для растра в памяти используют
BitmapPainter.
Синтаксис
val painter: Painter = painterResource(R.drawable.picture)
Пример
Давайте сохраним Painter в переменную
и передадим его в Image:
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.Image
import androidx.compose.ui.graphics.painter.Painter
import androidx.compose.ui.res.painterResource
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
val painter: Painter =
painterResource(R.drawable.picture)
Image(
painter = painter,
contentDescription = "abcde",
)
}
}
}
На экране появится картинка из
R.drawable.picture так же,
как при прямом вызове painterResource
внутри Image.
Смотрите также
-
функция
painterResource,
которая возвращаетPainterпоR.drawable -
функция
Image,
которая принимаетPainter -
класс
ImageBitmap,
источник дляBitmapPainter -
класс
ContentScale,
который задаёт масштабPainterв области