Метод setImageDrawable
Метод setImageDrawable класса
ImageView
принимает Drawable или null,
чтобы очистить картинку.
Drawable часто берут через
ContextCompat.getDrawable
или resources.getDrawable.
Для id ресурса проще
setImageResource.
Синтаксис
imageView.setImageDrawable(drawable)
Параметры
| Параметр | Описание |
|---|---|
drawable |
Объект Drawable или null для очистки.
|
Пример
Давайте поставим drawable из ресурсов приложения:
import android.os.Bundle
import android.widget.ImageView
import androidx.appcompat.app.AppCompatActivity
import androidx.core.content.ContextCompat
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val icon = findViewById<ImageView>(R.id.icon)
val drawable = ContextCompat.getDrawable(
this,
android.R.drawable.ic_menu_gallery,
)
icon.setImageDrawable(drawable)
}
}
На экране ImageView покажет системную иконку галереи.
Пример
Давайте очистим картинку, передав null:
import android.os.Bundle
import android.widget.Button
import android.widget.ImageView
import androidx.appcompat.app.AppCompatActivity
import androidx.core.content.ContextCompat
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val icon = findViewById<ImageView>(R.id.icon)
icon.setImageDrawable(
ContextCompat.getDrawable(this, android.R.drawable.ic_menu_add),
)
findViewById<Button>(R.id.action).setOnClickListener {
icon.setImageDrawable(null)
}
}
}
На экране после нажатия на кнопку изображение на ImageView исчезнет.
Смотрите также
-
метод
setImageResource,
который грузит drawable по id -
класс
ImageView,
который рисует Drawable -
метод
findViewById,
которым находят ImageView -
функция
Image,
растровая картинка в Compose