大家都知道,在我们调用ListView的addFooterView()方法给List增加一个页脚时,如果列表内容很多,超过了屏幕大小,那么页脚就看不到了,可我们一般想要的效果是如下图所示的,在ListView的内容超过屏幕时,页脚还在屏幕的底部。

本文将介绍上图所示的ListView效果,同时介绍一下在android中如何实现渐变效果,就像上图中的页眉页脚的背景色一样。

实现上面的效果主要使用几个RelativeLayout标签和ListView组合即可,代码如下所示:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<RelativeLayout android:id="@+id/listHeader"
android:background="@drawable/jbshape" android:layout_alignParentTop="true"
android:gravity="center_horizontal" android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView android:text="IdeasAndroid 列表演示" android:textColor="#000000"
android:textSize="18dip" android:layout_width="wrap_content"
android:layout_height="wrap_content"></TextView>
</RelativeLayout>
<RelativeLayout android:id="@+id/listFooter"
android:background="@drawable/jbshape" android:gravity="center_horizontal"
android:layout_alignParentBottom="true" android:layout_width="fill_parent"
android:layout_height="wrap_content">
<Button android:id="@+id/prePage" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="上一页"
android:layout_alignParentLeft="true"></Button>
<Button android:layout_width="wrap_content"
android:layout_gravity="right" android:layout_height="wrap_content"
android:text="下一页" android:layout_toRightOf="@id/prePage"></Button>
</RelativeLayout>
<ListView android:id="@+id/myListView" android:layout_width="fill_parent"
android:layout_height="fill_parent" android:layout_below="@id/listHeader"
android:layout_above="@id/listFooter">
</ListView>
</RelativeLayout>

几个关键点:
1、在页眉(id为listHeader)使用属性android:layout_alignParentTop=”true”
声明页眉部分与父视图的顶部对齐。
2、在页脚(id为listFooter)使用属性android:layout_alignParentBottom=”true” 声明其与父视图的底部对齐。
3、在 ListView中使用属性android:layout_below=”@id/listHeader” android:layout_above=”@id/listFooter” 声明ListView位于listHeader的下方,位于listFooter的上方。

这样我们的页眉页脚效果就实现了。

再来看看是怎么实现渐变的?

我们在res/drawable目录下新建一个叫jbshape.xml的文件,内容如下所示:


<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<gradient android:startColor="#509245" android:centerColor="#3e8532"
android:endColor="#509245" android:type="linear" android:angle="90"
android:centerX="0.5" android:centerY="0.5" />
<padding android:left="7dp" android:top="7dp" android:right="7dp"
android:bottom="7dp" />
<corners android:radius="4dp" />
</shape>

这里就不多讲了,相信你一看就能看懂,android:shape 配置的是图形的形式,主要包括方形、圆形等,本例中为方形。gradient节点主要配置起点颜色、终点颜色、中间点的坐标、中间点的颜色、渐变角度(90度为上下渐变,0为左右渐变),padding节点主要配置上下左右边距,corners节点配置四周园角的半径。更详细的配置参见http://www.ideasandroid.com/android/sdk/docs/guide/topics/resources/drawable-resource.html 。

使用渐变就更简单了,如第一部分代码中所示的,直接用android:background=”@drawable/jbshape” 配置背景为刚才配置的渐变图形即可。

好了,本文就介绍到这。如果还有不明白的地方请下载下面的代码,然后在本地测试一下就明白了。

代码下载:http://www.ideasandroid.com/android/demo/HeaderBottomListDemo.rar

  • 大小: 23 KB
  • 查看图片附件

ListView页眉页脚效果VS android背景渐变相关推荐

  1. excel更改页眉页脚_带格式日期的Excel页脚

    excel更改页眉页脚 It's Fancy Footer Friday! Check with your boss – maybe you can leave early to celebrate. ...

  2. excel打印预览在哪里_打印小心机:轮页眉页脚的重要性

    人们常说"职场如战场",竞争压力越来越大,没有一些"小心机"怎么行. 在打印合同.方案等多页文件时,最担心的就是系统设备出现问题,轻则耽误时间和工作进程,重则文 ...

  3. excel插入页码_Excel里毫不起眼的页眉页脚,居然有这3种高能用法!

    点击上方蓝字关注星标★不迷路 本文作者:小敏 本文编辑:小叮 一说到页眉页脚,你脑海中出现的,是不是这样一个画面? 规规矩矩的页眉页脚,比如,公司 logo 或者文件名称放在页眉位置,底部加个页码. ...

  4. Python操作Word文档的节属性和页眉/页脚

    封面图片:<Python程序设计实验指导书>(ISBN:9787302525790),董付国,清华大学出版社 图书详情(京东): 可与董付国老师的<Python程序设计(第2版)&g ...

  5. HTML页面打印功能js代码,JavaScript_js实现页面打印功能实例代码(附去页眉页脚功能代码),复制代码 代码如下: html - phpStudy...

    js实现页面打印功能实例代码(附去页眉页脚功能代码) 复制代码 代码如下: @media print{ .print {display:block;} .notPrint {display:none; ...

  6. LODOP在页面不同位置输出页眉页脚

    Lodop中的页眉页脚项的特点是:每页固定位置输出,具体该特点可查看本博客的其他博文:Lodop打印项对象类型属性区分 Lodop中有可以设置打印项次页偏移属性,但是该方法是针对单个打印项自动分页的, ...

  7. html打印自定义页头,CSS实现打印网页自定义页眉页脚

    打印网页时需设置自定义的页眉页脚,CSS没法直接设定:但可以利用table的特性,间接实现类似的效果: 实现效果 网页结构代码 /* @media print 限定样式,只作用于打印页 */ /* @ ...

  8. C# 添加PDF页眉/页脚

    这篇文章主要介绍了C# 添加PDF页眉/页脚的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 概述 页眉页脚是一篇完整.精致的文档的重要组成部分.在页眉页脚处,可 ...

  9. 设置Latex页眉页脚边距——fancyhdr的使用

    0.起因 学校要求用word编辑文档,并对格式和排版做了一些要求,本人尝试用latex来实现同样的效果 1.文档的格式要求 页边距:上25mm,下25mm,左25mm,右20mm 页眉边距15mm,页 ...

最新文章

  1. 阿里程序员工作小技巧:理解CPU分支预测,提高代码效率
  2. alert 返回页面 刷新_详解 HTML 页面原生的生命周期事件
  3. android 2.1 监听电话状态并自动接听来电
  4. 10.22 tcpdump:监听网络流量
  5. Java中的6颗语法糖
  6. 蒙了吗?offsetLeft、offsetWidth、scrollTop、scrollWidth、event.pageX
  7. 随想录(怎么用source insight阅读kernel代码)
  8. tomcat基本使用(二)
  9. 如何提升应用程序启动权限
  10. 工作七年,从实习生到测试主管,我认识到倾听对一个人有多重要!
  11. 使用jQuery插件filtrify实现的超酷动态标签分类摩托车新款展示
  12. 90后渐成互联网基金销售平台的购买主力
  13. CS 61A Spring 2019 HW01 学习笔记
  14. 质数/素数 - 合数
  15. 微信小程序前端【订阅消息】遇到的问题及总结
  16. Ubuntu安装teamviewer12
  17. 老毛桃制作装机版u盘
  18. 2018-2019-2 20175227张雪莹《Java程序设计》
  19. BOW 原理及代码解析
  20. 新手必读:一个牛人给的java九点建议

热门文章

  1. 错误接受率 (FAR), 错误拒绝率(FRR), 等错误率(EER)代码简易实现
  2. 坐标系中求三角形面积的三种方法(鞋带公式、海伦公式、三角形面积公式)
  3. c语言程序设计秋考答案,南开《C语言程序设计》19秋期末考核【标准答案】
  4. Android自定义view,圆形的TextView,并通过xml设置属性,AttributeSet中取值
  5. Windows Xp下清除系统垃圾
  6. 金融经济学(王江)期末梳理第十二章 μ-σ 分析组合选择
  7. Python遥感图像处理应用篇(四):python如何使用numpy读取遥感图像光谱值
  8. 如何区分“旁路电容”和“去耦电容”
  9. parseInt方法
  10. 基于VHDL的8×8led点阵的简易动态图画