android studio基础知识!👔

android studio基础知识

1.Text

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@Composable
fun GreetingText(message: String,from: String, modifier: Modifier = Modifier) {
Text(
text = message,
fontSize = 60.sp,
lineHeight = 60.sp,
modifier = modifier
)
Text(
text = from,
fontSize = 60.sp,
lineHeight = 60.sp,
)

}

2.Row/Column

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Column(
verticalArrangement = Arrangement.Center,
modifier = modifier
){
Text(
text = message,
fontSize = 40.sp,
lineHeight = 60.sp,
modifier = Modifier
.padding(16.dp)
.align(alignment = Alignment.CenterHorizontally)
)
Text(
text = from,
fontSize = 60.sp,
lineHeight = 60.sp,
modifier = Modifier
.padding(16.dp)
.align(alignment = Alignment.CenterHorizontally)
)

3.Image

存放位置:

1
2
3
4
5
6
7
8
9
10
MyProject/
src/
MyActivity.kt
res/
drawable/
graphic.png
mipmap/
icon.png
values/
strings.xml

etpack Compose 可以访问您的 Android 项目中定义的资源。可以使用在项目的 R 类中生成的资源 ID 访问资源。

R 类是 Android 自动生成的类,其中包含了项目中所有资源的 ID。在大多数情况下,资源 ID 与文件名相同。例如,可以使用以下代码访问上面的文件层次结构中的图片:

1
R.drawable.graphic

painterResource:这是一个函数,属于Jetpack Compose的API。这个函数的作用是获取一个Painter对象,这个对象可以用来绘制图像资源。Painter是Jetpack Compose中的一个接口,它定义了绘制图形和图像的方法。

1
2
3
4
5
val image = painterResource(R.drawable.androidparty)
Image(
painter = image,
contentDescription = null
)

4.Gif

添加coil库

导入:

1
2
3
4
import coil.ImageLoader
import coil.compose.AsyncImage
import coil.decode.GifDecoder
import coil.decode.ImageDecoderDecoder

使用:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
val context = LocalContext.current
val gifEnabledLoader = ImageLoader.Builder(context)
.components {
if ( SDK_INT >= 28 ) {
add(ImageDecoderDecoder.Factory())
} else {
add(GifDecoder.Factory())
}
}.build()

// 使用 R.drawable 中的资源 ID
val gifUri = "android.resource://${context.packageName}/${R.drawable.g6}"

Column(
verticalArrangement = Arrangement.Center,
modifier = modifier.background(color = Color(255, 255, 255))
){
AsyncImage(
model = gifUri,
imageLoader = gifEnabledLoader,
contentDescription = "Drawable GIF"
// 静态占位符,可以在预览中呈现
placeholder = painterResource(R.drawable.cat13),
// 设置不透明度
alpha = 0.5F
)

5.Box

6.Button


android studio基础知识!👔
https://yangchuanzhi20.github.io/2024/11/20/android/android基础知识/studio基础知识/
作者
白色很哇塞
发布于
2024年11月20日
许可协议