我要求更改ImageView
的启用状态
我有2张图片:一张用于启用状态&另一个是残疾人国家。
不使用选择器,如何更改Image src
时更改setEnabled(true/false)
?
那是:
imageView.setEnabled(true);
imageView - use image imgEnabled.png
imageView.setEnabled(false);
imageView - use image imgDisabled.png
谢谢
答案 0 :(得分:1)
试试这个
if(imageView.isEnabled())
{
imageView.setBackgroundResource(R.drawable.imgEnabled);
}
else
{
imageView.setBackgroundResource(R.drawable.imgDisabled);
}
答案 1 :(得分:1)
您可以使用setImageResource自行设置图像。 但这可能不合适,因为您的视图状态可能会在任何地方从您的代码中更改。
imageView.setEnabled(true);
imageView.setImageResource(R.drawable.imgEnabled);
imageView.setEnabled(false);
imageView.setImageResource(R.drawable.imgDisabled);
您也可以编写自己的扩展ImageView的类 并覆盖以下方法
@Override
protected void drawableStateChanged() {
super.drawableStateChanged();
if(isEnabled())
{
//set drawable for enabled state here
}
else
{
//set drawable for disabled state here
}
}
答案 2 :(得分:0)
您可以使用它来更改图像资源 -
imageView.setBackgroundResource(R.drawable.image);