在使用ListView或者GridView的时候。 假设想要在Aciviry中获取到Item中的子View,比較频繁的使用是:getChildAt(int position);

之前自己差点儿不会去使用findViewByTag,由于用不须要使用。这次项目须要,使用到了ExpandableListView,上下级的IItem。并且自定义了事件监听,可是事件监听方法的參数列表中没有专递ViewGroup parent和View convertView之类的參数,获取item中的view是行不通的。

这时就想到了setTag和findViewByTag,实现比較简单。例如以下代码:

一:在Adapter中的getView或者getRealChildView下,先找到mSwitch.icon = (ImageView) convertView.findViewById(R.id.swicon);

然后:mSwitch.icon.setTag("obj" + groupPosition + childPosition);    //setTag(Object object),这个object为随意对象,可是一定要保证其唯一性;

二:在Activity中,mIcon = (ImageView) listview.findViewWithTag("obj" + groupPosition + childPosition).findViewById(R.id.swicon);

于是就OK了。

关键代码:adapter中

mSwitch.icon = (ImageView) convertView.findViewById(R.id.swicon);
mSwitch.icon.setTag("obj" + groupPosition + childPosition);

activity中

mIcon = (ImageView) listview.findViewWithTag("obj" + groupPosition + childPosition).findViewById(R.id.swicon);

setTag和findViewByTag的使用具体解释的更多相关文章

  1. 【Android UI设计与开发】之具体解释ActionBar的使用

    具体解释Android中的ActionBar的使用 请尊重他人的劳动成果,转载请注明出处:具体解释Android中的ActionBar的使用 http://blog.csdn.net/fengyuzh ...

  2. wemall app商城源码Android中ViewHolder详细解释

    1.ViewHolder的解释: (1).只是一个静态类,不是Android的API方法. (2).它的作用就在于减少不必要的调用findViewById,然后把对底下的控件引用存在ViewHolde ...

  3. convertView&setTag方法的一点理解

    前言 首先我们要知道setTag方法是干什么的,SDK解释为 Tags Unlike IDs, tags are not used to identify views. Tags are essent ...

  4. 【Android界面实现】AppWidght全面学习之电量监控小部件的实现具体解释

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/bz419927089/article/details/35791047 前几天翻看之前下载的各种资料 ...

  5. 【转】Android的setTag

    前言 首先我们要知道setTag方法是干什么的,SDK解释为 Tags Unlike IDs, tags are not used to identify views. Tags are essent ...

  6. Android setTag()与getTag(),与set多个setTag()

    首先我们要知道setTag方法是干什么的,SDK解释为 Tags Unlike IDs, tags are not used to identify views. Tags are essential ...

  7. ZIP压缩算法详细分析及解压实例解释

    最近自己实现了一个ZIP压缩数据的解压程序,觉得有必要把ZIP压缩格式进行一下详细总结,数据压缩是一门通信原理和计算机科学都会涉及到的学科,在通信原理中,一般称为信源编码,在计算机科学里,一般称为数据 ...

  8. 说说BPM数据表和日志表中几个状态字段的详细解释

    有个客户说需要根据这些字段的值作为判断条件做一些定制化需求,所以需要知道这些字段的名词解释,以及里面存储的值具体代表什么意思 我只好为你们整理奉上这些了! Open Work Sheet  0 Sav ...

  9. 【完全开源】知乎日报UWP版:项目结构说明、关键源代码解释

    目录 说明 项目结构 关键代码 演示视频 说明 上一篇博客将源码放出来了,但是并没有做过多的介绍,所以如果自己硬看可能需要花费很长的时间,尤其这些代码并不是自己写的.项目不算复杂但是也不算简单,这篇文 ...

随机推荐

  1. 6个超实用的PHP代码片段

    一.黑名单过滤 function is_spam($text, $file, $split = ':', $regex = false){ $handle = fopen($file, 'rb'); ...

  2. 【bzoj4999】This Problem Is Too Simple! 树链剖分+动态开点线段树

    题目描述 给您一颗树,每个节点有个初始值. 现在支持以下两种操作: 1. C i x(0<=x<2^31) 表示将i节点的值改为x. 2. Q i j x(0<=x<2^31) ...

  3. BZOJ3772 精神污染 【主席树 + dfs序】

    题目 兵库县位于日本列岛的中央位置,北临日本海,南面濑户内海直通太平洋,中央部位是森林和山地,与拥有关西机场的大阪府比邻而居,是关西地区面积最大的县,是集经济和文化于一体的一大地区,是日本西部门户,海 ...

  4. linux系统——etc下的group 文件

    etc/group 文件 用户组的所有信息都存放在/etc/group文件中 将用户分组是Linux系统中对用户进行管理及控制访问权限的一种手段.每个用户都属于某个用户组:一个组中可以有多个用户,一个 ...

  5. idea下载多个插件项目启动不了解决方案

    今天下载mybatis plugin插件的时候 有好多个版本的plugin,然后呢,看第二个比较热门,就下载了第二个,然后重启idea发现这个插件貌似得花钱,那算了吧,咱用第一个免费的吧,就又下载了第 ...

  6. pat 甲级 1064. Complete Binary Search Tree (30)

    1064. Complete Binary Search Tree (30) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHE ...

  7. shell for参数

    关于shell中的for循环用法很多,一直想总结一下,今天网上看到上一篇关于for循环用法的总结,感觉很全面,所以就转过来研究研究1. for((i=1;i<=10;i++));do echo ...

  8. HDOJ 1171 Big Event in HDU

    Big Event in HDU Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others ...

  9. event.srcElement就是指向触发事件的元素,他是什么就有什么的属性

    原文发布时间为:2009-06-29 -- 来源于本人的百度文章 [由搬家工具导入] 得到或设置触发事件的对象。   event.srcElement就是指向触发事件的元素,他是什么就有什么的属性 s ...

  10. 关于百度富文本编辑器UEdit的初始化内容失败问题

    百度富文本编辑器毫无疑问是强大的,但也会出问题.这个问题是在脚本中普遍存在的,由异步性导致的加载顺序问题. 我们使用 var ue = UE.getEditor('editor', {}); 创建实例 ...