ListView的FooterView一般用来给用户展示一些提示信息。

正常情况下,是这么使用的。代码例如以下:

// footer
footerLayout = new PullLoadingLayout(context, MODE_PULL_DOWN_TO_REFRESH, releaseLabel,
pullLabel, refreshingLabel, isShowHeader);
refreshableView.addFooterView(footerLayout);

首先。创建一个FooterView对象,然后调用ListView的addFooterView()方法。这样,这个FooterView就被载入到了ListView的底部。

可是。存在一个问题,假设想要控制FooterView的可见状态,调用footerLayout.setVisibility(View.VISIBLE)或footerLayout.setVisibility(View.GONE)是不起作用的。

查阅了一些资料。非常多人都遇见了这个问题。这应该是ListView的一个bug。

在footerLayout的外层”套“一个父容器。

代码例如以下:

// footer
footerLayout = new PullLoadingLayout(context, MODE_PULL_DOWN_TO_REFRESH, releaseLabel,
pullLabel, refreshingLabel, isShowHeader);
footerLayoutHolder = new FrameLayout(getContext());
footerLayoutHolder.addView(footerLayout, 0, new FrameLayout.LayoutParams(FrameLayout.LayoutParams.MATCH_PARENT,
FrameLayout.LayoutParams.WRAP_CONTENT));
// add footer
refreshableView.addFooterView(footerLayoutHolder);

从上面的代码能够看出。在创建了footerLayout对象之后。又创建了一个FrameLayout的对象。叫footerLayoutHolder。然后用footerLayoutHolder对象去”包裹“footerLayout。

这样,假设想要控制FooterView的显示状态,直接调用footerLayout的setVisibility()方法就可以。

// 显示
footerLayout.setVisibility(View.VISIBLE);
// 隐藏
footerLayout.setVisibility(View.GONE);

【问题汇总】ListView的FooterView设置可见性的问题的更多相关文章

  1. Android为ListView的Item设置不同的布局

    MainActivity如下: package cc.testlistview; import java.util.ArrayList; import java.util.HashMap; impor ...

  2. Revit Family API 添加材质参数设置可见性

    start //添加类型 void AddType(FamilyManager familyMgr, string name, double w, double d) {     FamilyType ...

  3. WPF ListView控件设置奇偶行背景色交替变换以及ListViewItem鼠标悬停动画

    原文:WPF ListView控件设置奇偶行背景色交替变换以及ListViewItem鼠标悬停动画 利用WPF的ListView控件实现类似于Winform中DataGrid行背景色交替变换的效果,同 ...

  4. android ListView隐藏FooterView(headerView)

    安卓开发.正在使用listView时间,我们经常使用的footerView要么headerView 给ListView添加footer和header很多时间.它会基于隐藏和显示的情况下. 因为foot ...

  5. Android 中关于ListView分割线的设置

    今天发现许多App上的listview的item之间的分割线都只显示了右边一部分,而左边的那一半则没有,第一反应则是给分割线设置一张背景图片就ok了: android:divider="@m ...

  6. 实现ScrollView中包含ListView,动态设置ListView的高度

    ScrollView 中包含 ListView 的问题 : ScrollView和ListView会冲突,会导致ListView显示不全 <?xml version="1.0" ...

  7. Android ListView与ExpandableListView设置分割线divider

    listview设置分割线需要以下操作: lv.setDivider(getResources().getDrawable(R.drawable.diyline)); ExpandableListVi ...

  8. ANDROID_MARS学习笔记_S03_002_设置可见性及扫描蓝牙设备

    一.代码 1.xml(1)AndroidManifest.xml <uses-permission android:name="android.permission.BLUETOOTH ...

  9. ListView 行高设置不起作用

    通常我们在自定义listview的时候会遇到这个问题,我们设置了每行的layout的高度,但是没起作用,那是因为在adapter里面getview的时候出的问题,通常我们写: view = mInfl ...

随机推荐

  1. FormsAuthentication实现单点登录

    原文地址:http://www.wlm.so/Article/Detail/lmb48bk9f690n00000 单点登录,这种在网络非常常见,在这里讨论的是实现同一主域下的子站间的单点登录,同样也适 ...

  2. CodeForces Round #285 Div.2

    C.Misha and Forest (图论 BFS) 比赛进行了一半才想起来有场CF没打,=_=|| 前两道题快速切掉,C题一直卡没什么好的思路 憋了几天,忍不住偷偷瞄了一下别人AC的代码,发现我题 ...

  3. 4月数据库流行度排行榜 MySQL能否追上Oracle

    4月的数据库流行度排行榜可谓看点十足.闲言少叙,先上图: 前十名中,名次上升的都是NoSQL数据库,NoSQL凭借其对大数据处理的优势,发展越来越快.NoSQL是对众多非传统关系型数据库的总称,按存储 ...

  4. Cobar分布式数据库的应用与实践

    最新文章:看我如何快速学习.Net(高可用数据采集平台).高并发数据采集的架构应用(Redis的应用) 问题点: 随着项目的增长,数据和数据表也成倍的增长,普通的单点数据库已经无法满足日常的增长的需要 ...

  5. ichartjs

    ichartjs-基于html5的图表组件 不适合桌面端

  6. Vim常用配置(~/.vimrc)(转载)

    原文地址:http://www.2cto.com/os/201309/246271.html " This must be first, beacuse it changes other o ...

  7. 深入了解JavaScript中的关键字

    this是Javascript语言的一个关键字它代表函数运行时,自动生成的一个内部对象,只能在函数内部使用,下面分四种情况,详细讨论this的用法,感兴趣的朋友可以了解下. this是Javascri ...

  8. 问题:关于一个贴友的js留言板的实现

    需求:用js做一个简单的留言板效果 html部分: 1: <!DOCTYPE> 2: <html lang="zh-en"> 3: <head> ...

  9. 关于java线程池 Ⅱ

    上一篇翻译了线程池主要部分的api,经过一段时间的学习,这里记录一下这段时间对jdk自带线程池的学习成果. 为了方便说明,先放一张类图,包括了jdk线程池主要涉及到的类,为了条理清晰去掉了部分依赖和关 ...

  10. Struts2 url传递中文出现乱码

    项目所有的编码都改为了utf-8.在tomcat的 server.xml中修改下面这段 <Connector port="8080" protocol="HTTP/ ...