Ahm*_*han 6 kotlin-multiplatform android-jetpack-compose compose-multiplatform
我目前正在开发一个使用 Compose Multiplatform 项目的项目,并寻找处理从 URL 加载图像的方法。但是,由于不支持 Coil,我还没有找到解决方案。
我遇到过一个转换位图的手动 Ktor 实现,但它缺乏缓存支持和其他实现细节(例如加载、错误状态)。
有没有人使用库集成图像加载或找到 Compose Multiplatform 的其他替代方案?
Coil 已发布 3.0.0-alpha03 版本,支持多平台
基本配置如下,通常shared/build.gradle.kts
:
kotlin {
// targets configuration
sourceSets {
commonMain.dependencies {
implementation("io.coil-kt.coil3:coil-compose:3.0.0-alpha03")
implementation("io.coil-kt.coil3:coil-network-ktor:3.0.0-alpha03")
}
androidMain.dependencies {
implementation("io.ktor:ktor-client-okhttp:2.3.7")
}
iosMain.dependencies {
implementation("io.ktor:ktor-client-darwin:2.3.7")
}
}
}
Run Code Online (Sandbox Code Playgroud)
重要提示:要从 Coil 3.0 中的网络 URL 加载图像,您需要为每个源集导入单独的工件。
的基本用法AsyncImage
:
AsyncImage(
model = "https://example.com/image.jpg", // replace with working URL
contentDescription = null
)
Run Code Online (Sandbox Code Playgroud)
对于加载和错误的更高级用法,请使用SubcomposeAsyncImage
如果您已经使用了线圈 2.x,请查看指南如何升级到线圈 3.x
归档时间: |
|
查看次数: |
1439 次 |
最近记录: |