ListView的 addHeaderView

  在代码中使用 listView .addHeaderView(...) 方法可以在ListView组件上方添加上其他组件,并且连结在一起像是一个新组件。如果多次使用 .addHeaderView(...) ,则最先添加的组件在最上方,按添加的先后顺序由上到下罗列。

此时listView 的 position = 0 的位置对应的是view1,而不再是原来listView中的第一条了。

若要对做原来的ListView做不可见设置,可使用将listView的adapter中数据置空的方法,在可见时再还原数据,如:

--隐藏 ListView --

mStaffAdapter.mDataList=new ArrayList<Map<String,Object>>();
 mStaffAdapter.notifyDataSetChanged();

--展开 ListView --

mStaffAdapter.mDataList=mStaffDataList;//mStaffDataList是原来的缓存数据
 mStaffAdapter.notifyDataSetChanged();

时间: 2024-12-19 08:35:08

ListView的 addHeaderView的相关文章

ListView的addHeaderView()方法相关问题

使用listView.addHeaderView(view) 可以在 listView 上方添加一个view视图 ,使listView和这个view连接在一起 效果上看上去是一个整体 一般用于上拉刷新下拉加载listView 1.关于addHeaderView(view)方法的多次使用 对应一个ListView对象 比如:list 每使用一次addHeaderView(view)方法 就会在list 列表对象上方添加一个view 而添加的view的排列顺序是按照添加的次序排列的, list.ad

从源码上分析ListView的addHeaderView和setAdapter的调用顺序

ListView想要添加headerview的话,就要通过addHeaderView这个方法,然后想要为ListView设置数据的话,就要调用setAdapter方法了.但是,在调用addHeaderView和setAdapter的顺序上,有时会爆出Java.lang.IllegalStateException: Cannot add header view to list -- setAdapter has already been called.的异常.这是因为我们在addHeaderVie

ListView的addHeaderView和setAdapter的调用顺序

ListView想要添加headerview的话,就要通过addHeaderView这个方法,然后想要为ListView设置数据的话,就要调用setAdapter方法了.但是,在调用addHeaderView和setAdapter的顺序上,有时会爆出java.lang.IllegalStateException: Cannot add header view to list -- setAdapter has already been called.的异常.这是因为我们在addHeaderVie

android重写listview使用addHeaderView和addFooterView注意事项

1.添加addHeaderView或addFooterView 对listview添加headerView或footerView时,可以选择addHeaderView(headView)或addHeaderView(headView, null, false),注意后者第三个参数boolean isSelectable,对于listview中设置onItemClick事件,需要将isSelectable设为false,从而保证点击APP出现异常 2.Item中包含按钮或点击控件 如果listvi

Android listview addHeaderView 和 addFooterView 详解

addHeaderView()方法:主要是向listView的头部添加布局 addFooterView()方法:主要是向listView的底部添加布局 需要注意的是添加布局的时候应该添加从父容器开始添加,而不能直接添加父容器中的子控件.例如:从一个xml布局文件中添加一个button控件, 只能将整个布局xml文件添加进去.而不能单单只添加button控件. 当添加头部和底部布局还有另外一个重载方法就是addHeaderView(headView, null, false) 和addFooter

android listview addHeaderView和addFooterView的注意事项

1. item内如果有button等控件时,在监听listview的onitemclick事件时,焦点会被item内的button. imagebutton等控件抢走,从而导致在listview设置了onitemclick事件后不会被触发.解决方法是在初始化item的时候屏蔽掉 其内部button等控件的焦点获取,具体方法可以在自定义item的根控件中调用: [java] view plaincopy setDescendantFocusability(ViewGroup.FOCUS_BLOCK

ListView下拉刷新

public class MyListView extends ListView implements OnScrollListener { private static final int STATE_NORMAL = 0;  // 正常状态 private static final int STATE_PULL = 1;    // 下来状态 private static final int STATE_RELEASE = 2; // 释放状态 private static final in

Android UI设计之&lt;十&gt;自定义ListView,实现QQ空间阻尼下拉刷新和渐变菜单栏效果

转载请注明出处:http://blog.csdn.net/llew2011/article/details/51559694 好久没有写有关UI的博客了,刚刚翻了一下之前的博客,最近一篇有关UI的博客是在2014年写的:Android UI设计之<七>自定义Dialog,实现各种风格效果的对话框,在那篇博客写完后由于公司封闭开发封网以及其它原因致使博客中断至今,中断这么久很是惭愧,后续我会尽量把该写的都补充出来.近来项目有个需求,要做个和QQ空间类似的菜单栏透明度渐变和下拉刷新带有阻尼回弹的效

南京学思XSuperNest使用addHeaderView注意事项

在做学思钢板管理系统的项目中用到了addHeaderView,现在把注意事项记下来1.item内如果有button等控件时,在监听listview的onitemclick事件时,焦点会被item内的button.imagebutton等控件抢走,从而导致在listview设置了onitemclick事件后不会被触发.解决方法是在初始化item的时候屏蔽掉其内部button等控件的焦点获取,具体方法可以在自定义item的根控件中调用:[java] view plaincopysetDescenda