【问题标题】:How to check image resource of an imageview programmatically?如何以编程方式检查图像视图的图像资源?
【发布时间】:2015-04-24 21:23:39
【问题描述】:

我想检查我的图像视图的背景,如果它等于我的可绘制文件夹中的某些可绘制对象,请执行某项操作。我怎样才能做到这一点?我试过这段代码但没有答案:

layoutRoot.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View view) {
        if (view.getBackground() == R.drawable.grid_single_bg_selected) {
            //Do sth
        }
    }
});

【问题讨论】:

  • getBackground() 返回一个 Drawable,所以上面的代码肯定不会工作。你如何设置 imageView 的背景?

标签: java android drawable


【解决方案1】:

当你设置背景drawable时,也要为imageview设置一个标签

imageView.setTag(R.drawable.demo);

然后比较

if (((Integer) imageView.getTag()) == R.drawable.demo){
   // Do stg
}

【讨论】:

  • 我想在网格视图项目上使用这个技巧。我想访问每个视图背景并进行比较。如果有办法获取可绘制对象的 id,它可能会解决问题。
【解决方案2】:

如果您以编程方式设置 imageView,则在设置时,还要为此 imageView 设置一个标签。现在,当你想找出drawable时,你可以通过检索这个imageView的标签来实现。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-24
    • 1970-01-01
    • 1970-01-01
    • 2015-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多