【发布时间】:2021-08-09 14:10:16
【问题描述】:
如果用户选择了任何内容,我会尝试从图库中显示图像,或者将可绘制资源中的图像文件中的图像显示为默认图像,但这不起作用。我正在使用 Coil for Compose 并已经添加了依赖项。代码如下:
class MainActivity : ComponentActivity() {
private var imageUriState = mutableStateOf<Uri?>(null)
private val selectImageLauncher = registerForActivityResult(GetContent()) { uri ->
imageUriState.value = uri
}
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
ImageSourceActivityScreen()
}
}
@Composable
fun ImageSourceActivityScreen() {
Column(
modifier = Modifier.fillMaxSize(),
verticalArrangement = Arrangement.Center
) {
Image(
painter = rememberImagePainter(
if (imageUriState != null) {
imageUriState.value
} else {
R.drawable.blank_profile_picture
}
),
contentDescription = "profile image",
contentScale = ContentScale.Crop,
modifier = Modifier.fillMaxWidth()
)
...
}
没有显示错误,但也没有显示默认图像。请帮助使其工作。谢谢!
【问题讨论】:
-
用户选择的图像是否有效?你用的是哪个版本的compose和coil?
-
什么都没有显示 - 甚至是 UI 的其余部分(按钮)!现在修好了,谢谢!
标签: android kotlin android-jetpack-compose coil