Skip to main content

How to set an image to an ImageView in Kotlin Android

How to set an image to an ImageView in Kotlin Android.

Here is a step-by-step tutorial on how to set an image to an ImageView in Kotlin Android:

  1. First, make sure you have an ImageView element in your XML layout file. You can define it like this:
<ImageView
android:id="@+id/imageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/placeholder_image" />

In this example, we have set a placeholder image using the android:src attribute. You can replace it with any desired image.

  1. Next, find the ImageView in your activity or fragment class. You can do this by calling the findViewById method and passing the ID of the ImageView:
val imageView: ImageView = findViewById(R.id.imageView)
  1. To set an image to the ImageView, you have a few options:

    a. Using a drawable resource:

    imageView.setImageResource(R.drawable.my_image)

    Replace my_image with the name of your drawable resource file.

    b. Using a bitmap:

    val bitmap: Bitmap = BitmapFactory.decodeResource(resources, R.drawable.my_image)
    imageView.setImageBitmap(bitmap)

    Replace my_image with the name of your drawable resource file.

    c. Using a file path:

    val imagePath: String = "path_to_image_file"
    val file: File = File(imagePath)
    val bitmap: Bitmap = BitmapFactory.decodeFile(file.absolutePath)
    imageView.setImageBitmap(bitmap)

    Replace path_to_image_file with the actual path to your image file.

    d. Using a URL:

    val imageUrl: String = "https://example.com/image.jpg"
    Picasso.get().load(imageUrl).into(imageView)

    Make sure to add the Picasso library to your project by adding the following line to your app-level build.gradle file:

    implementation 'com.squareup.picasso:picasso:2.71828'
  2. After setting the image, you can also apply additional properties to the ImageView if needed. For example, you can adjust the scale type, set a click listener, or apply animations.

Here is an example of setting a click listener:

imageView.setOnClickListener {
// Handle click event here
}

And here is an example of applying a scale type:

imageView.scaleType = ImageView.ScaleType.CENTER_CROP

That's it! You have successfully set an image to an ImageView in Kotlin Android.