Android Bug BaseExpandableListAdapter, getChildView
@Override
public View getChildView(final int groupPosition, final int childPosition,
boolean isLastChild, View convertView, ViewGroup parent) {
Log.d(TAG, "getChildView() group="+groupPosition+", child="+childPosition);
final String children = (String) getChild(groupPosition,childPosition);
if (convertView == null || children != ((ViewHolder) convertView.getTag()).text.getText()) {
Log.d(TAG, "getChildView() - initialize converView");
LayoutInflater inflater = LayoutInflater.from(context);
convertView = inflater.inflate(R.layout.expandable_list_row, null);
ViewHolder viewHolder = new ViewHolder();
viewHolder.text = (TextView) convertView.findViewById(R.id.textView1);
viewHolder.image = (ImageView) convertView.findViewById(R.id.imageCheck);
convertView.setTag(viewHolder);
convertView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.e("test","group="+groupPosition+", child="+childPosition);
final ImageView imageCheck = (ImageView)v.findViewById(R.id.imageCheck);
imageCheck.setVisibility(ImageView.VISIBLE);
int dialogType = getAntecedentType(groupPosition, childPosition);
int antecedentId = getAntecedentId(groupPosition, childPosition);
if(antecedentId != -1) {
MedicalAntecedentDialog dialog = dialogs.get(antecedentId);
if(dialog != null) {
dialog.show();
}
else {
MedicalAntecedentDialog dialog2 = new MedicalAntecedentDialog(context, children, dialogType);
dialogs.append(antecedentId, dialog2);
dialog2.show();
}
}
}
});
}
ViewHolder holder = (ViewHolder) convertView.getTag();
holder.text.setText(children);
return convertView;
}
这里出现问题:
if (convertView == null || children != ((ViewHolder) convertView.getTag()).text.getText()) {
Log.d(TAG, "getChildView() - initialize converView"); Group1里前9项都被初始化了,而第十个和第十一个没有,第十二个元素初始化正确。
原因是,android 系统会进行条目回收(Recycler)。只创建必要的条目数,而重用已经创建的条目。
Android Bug BaseExpandableListAdapter, getChildView的更多相关文章
- Android ExpandableListView BaseExpandableListAdapter (类似QQ分组列表)
分组列表视图(ExpandableListView) 和ListView不同的是它是一个两级的滚动列表视图,每一个组可以展开,显示一些子项,类似于QQ列表,这些项目来至于ExpandableListA ...
- Android Bug分析系列:第三方平台安装app启动后,home键回到桌面后点击app启动时会再次启动入口类bug的原因剖析
前言 前些天,测试MM发现了一个比较奇怪的bug. 具体表现是: 1.将app包通过电脑QQ传送到手机QQ上面,点击安装,安装后选择打开app (此间的应用逻辑应该是要触发 [闪屏页Activity] ...
- 【转载】Android Bug分析系列:第三方平台安装app启动后,home键回到桌面后点击app启动时会再次启动入口类bug的原因剖析
前言 前些天,测试MM发现了一个比较奇怪的bug. 具体表现是: 1.将app包通过电脑QQ传送到手机QQ上面,点击安装,安装后选择打开app (此间的应用逻辑应该是要触发 [闪屏页Activity] ...
- Android Bug 记录
1.Unable to resolve target 'android-5' 无法解析目标 ' 安卓系统-5' Unable to resolve target 'Google Inc.:G ...
- Android Bug:Error:com.android.dex.DexException: Multiple dex files define Landroid/support/design/widget/CoordinatorLayout$LayoutParams;
项目编译通过,运行时出现异常: Error:com.android.dex.DexException: Multiple dex files define Landroid/support/desig ...
- android bug笔记
昨天集成一个第三方的联盟sdk,然后执行它的代码,程序就会crash,这个第三方的sdk报错日志后面,紧跟着一个友盟分享的报错,我现在也不明白这里是为何把友盟给扯进来了,因为我这步骤操作上并没有调用任 ...
- [Android Bug] ListView中Header, Footer无法隐藏(gone)的问题
ListView中Header.Footer View应该是会应该遇到, 比如说,滚动到底部时,自动开始加载: 对于一些应用市场,会在Header中加上ViewFlipper做应用推荐(滚动的那种,好 ...
- android bug archive
console提示: No Launcher activity found! The launch will only sync the application package on the devi ...
- Android分组子级的不同视图布局之BUG奇遇记
Android分组子级的不同视图布局之BUG奇遇记 最近在使用按日期分类列表,二级条目可能不一样,于是就想到了ExpandableListView. ExpandableListView的布局显示分割 ...
随机推荐
- c# 类间关系
一.依赖关系 简单的理解,依赖就是一个类A使用到了另一个类B,而这种使用关系是具有偶然性的.临时性的.非常弱的,但是类B的变化会影响到类A.比如某人要过河,需要借用一条船,此时人与船之间的关 ...
- 43.国际化-app级别的资源文件
转自:https://wenku.baidu.com/view/84fa86ae360cba1aa911da02.html 在src目录下建立两个资源文件,取名为myapp_en_US.propert ...
- 解决opencv3运行opencv2代码时报错的修改备忘录
虽然opencv3是基于opencv2进行开发的(一部分opencv2代码在opencv3中还能正常运行),但opencv3自身也做了部分修改,而目前网上很多教程还是基于opencv2的函数API来编 ...
- 迷你MVVM框架 avalonjs 0.92发布
本版本最大的改进是引入ms-class的新风格支持,以前的不支持大写类名及多个类名同时操作,新风格支持了.还有对2维监控数组的支持.并着手修复UI框架. 重构 class, hover, active ...
- nodejs API(二)
官网所在位置:https://nodejs.org/dist/latest-v6.x/docs/api/querystring.html querystring.escape(str) 转义 qu ...
- python常用option
[python常用option] 1. -c cmd : program passed in as string (terminates option list) 解析字符串命令,不读cmd之后的op ...
- 第七章 二叉搜索树 (a)概述
- ubuntu14.04环境下利用docker搭建solrCloud集群
在Ubuntu14.04操作系统的宿主机中,安装docker17.06.3,将宿主机的操作系统制作成docker基础镜像,之后使用自制的基础镜像在docker中启动3个容器,分配固定IP,再在3个容器 ...
- SQL server2008零基础学习
SQL 基础 数据库简介: 数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,它产生于距今五十年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管 ...
- ASP.NET文件上传大小限制
上传限制 我们以为的文件大小限制 我们大家都知道ASP.NET为我们提供了文件上传服务器控件FileUpload,默认情况下可上传的最大文件为4M,如果要改变可上传文件大小限制,那么我们可以在web. ...