ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java – Android:如何将图像资源与R.drawable.imagename进行比较?

2019-08-27 00:27:58  阅读:246  来源: 互联网

标签:android java listener imageview


我正在开发一个示例应用程序,我需要在onClick侦听器中获取图像视图的资源,并将其与我知道存在的图像源进行比较.如果资源相同,我想启动另一个意图.我现在面临的问题是访问ImageView(以及它的资源Id整数)以与可绘制资源进行比较.

@Override
// should int be final ??
public View getView(final int position, View convertView, ViewGroup parent) {

    ImageView imageView;
    if (convertView == null) {  // if it's not recycled, initialize some attributes
        imageView = new ImageView(mContext);
        imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
        imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
        imageView.setPadding(8, 8, 8, 8);
    } else {
        imageView = (ImageView) convertView;
    }

    imageView.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) { 
// This is not working and I need to find a way to solve this >>
                if (((ImageView)v).getResources().getInteger(0) == R.drawable.imageToCompare)
                {
                    // do nothing
                }
                else
                {
                    // do something         
                }

解决方法:

您无法从ImageView获取可绘制的ID.但是如果你从代码中设置它,你也可以将它存储在某个地方,例如在标记字段中.看看类似的问题:Who I compare an background Image resource TextView with a R.drawable.bg_image for switch.

标签:android,java,listener,imageview
来源: https://codeday.me/bug/20190826/1735244.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有