Webentwicklung
HTTP-Bilder in ImageView anzeigen – Android Kotlin
[ad_1]
In diesem Tutorial zeigen wir Ihnen, wie Sie mit Kotlin HTTP-Bilder in Ihrem ImageView in Ihrer Android-App anzeigen können. Wir werden dieses Bild „https://www.nasa.gov/sites/default/files/styles/full_width_feature/public/thumbnails/image/stsci-01gfnn3pwjmy4rqxkz585bc4qh.png“ in unserer Bildansicht anzeigen.
Erstellen Sie dann eine Datei mit dem Namen „FetchImageFromInternet.kt“ und schreiben Sie den folgenden Code hinein:
package com.adnantech.myapp
import android.annotation.SuppressLint
import android.graphics.Bitmap
import android.graphics.BitmapFactory
import android.os.AsyncTask
import android.util.Log
import android.widget.ImageView
import android.widget.Toast
@SuppressLint("StaticFieldLeak")
@Suppress("DEPRECATION")
class FetchImageFromInternet(var imageView: ImageView) : AsyncTask<String, Void, Bitmap?>() {
init {
// Toast.makeText(applicationContext, "Please wait, it may take a few minute...", Toast.LENGTH_SHORT).show()
}
override fun doInBackground(vararg urls: String): Bitmap? {
val imageURL = urls[0]
var image: Bitmap? = null
try {
val `in` = java.net.URL(imageURL).openStream()
image = BitmapFactory.decodeStream(`in`)
}
catch (e: Exception) {
Log.e("Error Message", e.message.toString())
e.printStackTrace()
}
return image
}
override fun onPostExecute(result: Bitmap?) {
imageView.setImageBitmap(result)
}
}
Und das wird Ihre Bildansicht sein:
<ImageView
android:id="@+id/imageView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:scaleType="fitCenter" />
Wenn Sie dann ein HTTP-Bild anzeigen möchten, schreiben Sie einfach die folgenden Zeilen:
val imageView: ImageView = findViewById(R.id.imageView)
FetchImageFromInternet(imageView)
.execute("https://www.nasa.gov/sites/default/files/styles/full_width_feature/public/thumbnails/image/stsci-01gfnn3pwjmy4rqxkz585bc4qh.png")
Führen Sie die App jetzt aus und Sie können das HTTP-Bild in Ihrer App anzeigen. Schauen Sie sich unsere weiteren Tutorials an Android.
Beitragsaufrufe: 13