Neu bei Jetpack Compose und Coil, aber nicht neu in Android oder Java/Kotlin. /p>
Ich habe das Google/Android -Tutorial von (https://developer.android.com/jetpack/compons/tutorial) genommen und zum Gradle -Skript hinzugefügt:
implementation("io.coil-kt:coil:2.0.0-rc03")
implementation("io.coil-kt:coil-compose:2.0.0-rc03")
< /code>
Und ich habe den Nachrichten eine String -URL hinzugefügt: < /p>
data class Message(val author: String, val url: String, val body: String)
< /code>
und fügte den Beispieldaten URLs hinzu: < /p>
Message(
"Colleague",
"http://martypants.us/images/person4.png",
"Searching for alternatives to XML layouts..."
)
< /code>
Und in meinem @compositable habe ich es geändert, um eine Asyncimage zu verwenden, um die URL anstelle eines zeichnbaren < /p>
zu laden@Composable
fun MessageCard(msg: Message) {
Row {
AsyncImage(
model = ImageRequest.Builder(LocalContext.current)
.data(msg.url)
.build(),
placeholder = painterResource(R.drawable.ic_profile),
error = painterResource(R.drawable.ic_error),
contentDescription = stringResource(R.string.description),
contentScale = ContentScale.Fit,
modifier = Modifier
// Set image size to 40 dp
.size(40.dp)
.width(48.dp)
.height(48.dp)
// Clip image to be shaped as a circle
.clip(CircleShape)
.align(Alignment.CenterVertically)
.border(1.5.dp, MaterialTheme.colors.secondary, CircleShape)
)
}
< /code>
Wenn ich es ausführe, wird das Bild nicht geladen. Ich habe verifiziert, dass das Bild existiert, lesbar usw. Ich sehe nur den Fehlerplatzhalter und sehe nie Fehler in logcat. 'Scheinen herauszufinden, warum meine Bilder nicht geladen sind. Was fehlt ich?
Jetpack komponieren mit einer Spule, die URL -Bilder nicht laden ⇐ Android
-
- Similar Topics
- Replies
- Views
- Last post