getView()执行次数问题(自己再次测试,顺便做个记录)

public class ChexianListAdapter extends BaseExpandableListAdapter {
	
	int count = 0;
	public ChexianListAdapter( Context mContext,String[] mgroup_title_arry,String[][] mchild_text_array){
	}
	
	// 重写ExpandableListAdapter中的各个方法
	/**
	 * 获取一级标签总数
	 */
	@Override
	public int getGroupCount() {
	}

	/**
	 * 获取一级标签内容
	 */
	@Override
	public Object getGroup(int groupPosition) {
	}

	/**
	 * 获取一级标签的ID
	 */
	@Override
	public long getGroupId(int groupPosition) {
	}

	/**
	 * 获取一级标签下二级标签的总数
	 */
	@Override
	public int getChildrenCount(int groupPosition) {
	}

	/**
	 * 获取一级标签下二级标签的内容
	 */
	@Override
	public Object getChild(int groupPosition, int childPosition) {
	}

	/**
	 * 获取二级标签的ID
	 */
	@Override
	public long getChildId(int groupPosition, int childPosition) {
	}

	/**
	 * 指定位置相应的组视图
	 */
	@Override
	public boolean hasStableIds() {
	}

	/**
	 * 对一级标签进行设置
	 */
	@Override
	public View getGroupView(int groupPosition, boolean isExpanded,
			View convertView, ViewGroup parent) {
		count ++;
		System.out.println("次数" + count + "所在父list的位置" + groupPosition);
		// 返回一个布局对象
		return convertView;
	}


	/**
	 * 对一级标签下的二级标签进行设置
	 */
	@Override
	public View getChildView(int groupPosition, int childPosition,
			boolean isLastChild, View convertView, ViewGroup parent) {
		convertView = (RelativeLayout) RelativeLayout.inflate(
				mContext, R.layout.chexian_child_layout, null);
		return convertView;
	}

	/**
	 * 当选择子节点的时候,调用该方法
	 */
	@Override
	public boolean isChildSelectable(int groupPosition, int childPosition) {
		return true;
	}

};

下面上测试结果

结果   1 


其对应布局文件


结果     2  


其对应布局文件;


结果3


其对应布局文件


好了

测试结果已经全部给显示出来,看到了什么?

重点都在高度的设置上fill 和wr 的 不同导致getview()的次数也不同。



这个listview的显示样式如下:



然后就是

在正确的执行次数的情况之下,去测试拖动的时候的情况;如图:


这个就顺便说明了listview的工作原理

具体不多说,可以去搜索一下,回来看这个图就会明白它说的那个管理的机制是什么个情况了。

另外还有

2中优化listview 的方案

我这个adapter里面没有使用,所以在滑动的时候每次都要加载一次xml文件

没有体现到复用的知识。

感兴趣的可以去搜索一下

我要是去测试优化情况下的执行次数的时候

会再次发帖的。


link:给推荐几个对程序员来说神器般存在的软件


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值