最近的项目中给ListView 加入了一个Header View之后,发现Header View的下方也有了分割线,很难看,UI要求将Header View的分割器去掉,好吧。现在就来说一说如何如何去除ListView中Header View中的分割线。

Header View中带分割线

Header View中不带分割线

Header View中要去掉的分割线

方法1

ListView的部分布局代码如下所示

<ListView
android:id="@+id/ll_channel_list_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@color/color_list_divider"
android:dividerHeight="1px" />

先调用ListView的addHeaderView(View v, Object data, boolean isSelectable)方法添加Header View,注意第三个参数 isSelectable 必须为true,否则无效

然后调用ListView的setHeaderDividersEnabled(boolean headerDividersEnabled)方法设置Header View不显示分割线,代码如下所示:

    listView.addHeaderView(mHeader, null, true);
//禁止头部出现分割线
listView.setHeaderDividersEnabled(false);

顺便说一下:如果要去除ListView中Footer View中的分割线,也是类似的方法

先调用ListView的addFooterView(View v, Object data, boolean isSelectable)方法添加Footer View,注意第三个参数 isSelectable 必须为true,否则无效

然后调用ListView的setFooterDividersEnabled(boolean footerDividersEnabled)方法设置Footer View不显示分割线,代码如下所示:

 listView.addFooterView(mFooter, null, true);
//禁止底部出现分割线
listView.setFooterDividersEnabled(false);

方法2

在ListView的布局文件中不设置分割线,如下所示:

<ListView
android:id="@+id/ll_channel_list_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@null" />

然后在item布局文件中加入一个view作为分割线,代码类似于如下所示:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"> <RelativeLayout
android:id="@+id/rl_item_program"
android:layout_width="match_parent"
android:layout_height="116dp"
android:background="@drawable/bg_item_program_selector"
android:orientation="horizontal"> <ImageView
android:id="@+id/iv_program_play_ico"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:layout_marginLeft="10dp"
android:gravity="center"
android:src="@drawable/playing_anim"
/> <TextView
android:id="@+id/tv_program_name"
android:layout_width="wrap_content"
android:layout_height="116dp"
android:layout_centerVertical="true"
android:layout_toRightOf="@id/iv_program_play_ico"
android:ellipsize="end"
android:gravity="center_vertical"
android:lineSpacingExtra="12dp"
android:maxLines="2"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:text="abcdefghijklmnabcdefghijklmnabcdefghijklmn"
android:textColor="@color/white"
android:textSize="32dp"/>
</RelativeLayout> <!--添加分割线-->
<View
android:layout_width="fill_parent"
android:layout_height="1px"
android:layout_below="@id/rl_item_program"
android:background="@color/color_list_divider"/>
</RelativeLayout>

这样ListView就不会有分割线了,只是在内容区域有分割线,Header View和Footer View就不会再出现分割线。


作者:欧阳鹏 欢迎转载,与人分享是进步的源泉!

转载请保留原文地址:http://blog.csdn.net/ouyang_peng/article/details/52749732

【我的Android进阶之旅】如何去除ListView中Header View、Footer View中的分割线的更多相关文章

  1. 我的Android进阶之旅------>如何为ListView组件加上快速滑块以及修改快速滑块图像

    使用布局文件需要将android:fastScrollEnabled="true" ,如下代码所示: <ListView android:id="@+id/list ...

  2. [置顶] 我的Android进阶之旅------>介绍一款集录制与剪辑为一体的屏幕GIF 动画制作工具 GifCam

    由于上一篇文章:我的Android进阶之旅------>Android之动画之Frame Animation实例 中展示的是Frame动画效果,但是之前我是将图片截取下来,不好说明确切的动画过程 ...

  3. 我的Android进阶之旅------&gt; Android在TextView中显示图片方法

    面试题:请说出Android SDK支持哪些方式显示富文本信息(不同颜色.大小.并包括图像的文本信息).并简要说明实现方法. 答案:Android SDK支持例如以下显示富文本信息的方式. 1.使用T ...

  4. 【我的Android进阶之旅】推荐一款视频转换GIF图片格式的转换工具(Video to GIF)

    一.背景 最近想把一些Android Demo的运行效果图获取下来,但是一直使用真机进行调试,在电脑上不好截取一段gif动画.而之前使用模拟器的时候可以使用 GifCam 工具进行屏幕动画截取.Gif ...

  5. 我的Android进阶之旅------&gt;Android字符串资源中的单引號问题error: Apostrophe not preceded by 的解决的方法

    刚刚在string字符串资源文件里,写了一个单引號.报错了,错误代码例如以下 error: Apostrophe not preceded by \ (in OuyangPeng's blog ) 资 ...

  6. 我的Android进阶之旅------>Android颜色值(#AARRGGBB)透明度百分比和十六进制对应关系以及计算方法

    我的Android进阶之旅-->Android颜色值(RGB)所支持的四种常见形式 透明度百分比和十六进制对应关系表格 透明度 十六进制 100% FF 99% FC 98% FA 97% F7 ...

  7. 我的Android进阶之旅------>解决Jackson等第三方转换Json的开发包在开启混淆后转换的实体类数据都是null的bug

    1.错误描述 今天测试人员提了一个bug,说使用我们的app出现了闪退的bug,后来通过debug断点调试,发现我们的app转换服务器发送过来的json数据后,都是为null.而之前已经提测快一个月的 ...

  8. 我的Android进阶之旅------>关于android:layout_weight属性的详细解析

    关于androidlayout_weight属性的详细解析 效果一 效果二 图3的布局代码 图4的布局代码 效果三 图7代码 图8代码 效果四 效果五 版权声明:本文为[欧阳鹏]原创文章,欢迎转载,转 ...

  9. 我的Android进阶之旅------>如何解决Android 5.0中出现的警告: Service Intent must be explicit:

    我的Android进阶之旅-->如何解决Android 5.0中出现的警告: java.lang.IllegalArgumentException: Service Intent must be ...

  10. 我的Android进阶之旅------>Java字符串格式化方法String.format()格式化float型时小数点变成逗号问题

    今天接到一个波兰的客户说有个APP在英文状态下一切运行正常,但是当系统语言切换到波兰语言的时候,程序奔溃了.好吧,又是我来维护. 好吧,先把系统语言切换到波兰语,切换到波兰语的方法查看文章 我的And ...

随机推荐

  1. 关于UNIX/Linux下安装《UNIX环境高级编程》源代码的问题

    <UNIX环境高级编程(第三版)>是一本广为人知的unix系统编程书籍. 但是,书中的代码示例,要想正确的编译运行,要先做好准备工作: 1.下载源代码 传送门:http://apueboo ...

  2. Codeforces Round #238 (Div. 2) D. Toy Sum

    D. Toy Sum   time limit per test:1 second memory limit per test:256 megabytes input:standard input o ...

  3. JAVA中使用P和Q分量计算N和D进行RSA运算

    最近在使用Java中需要使用PQ形式的私钥进行RSA加解密运算,本来以为Java中应该很多类似的例子,发现所有的例子都是从ND形式的私钥,竟然没有人用分量P和Q计算N和D进行运算.对Java使用RSA ...

  4. linux学习笔记14--命令which和whereis

    我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:        which  查看可执行文件的位置.       whereis 查看文件的位置.         ...

  5. 删除Win10的自带应用

    显示 Get-AppxPackage | Select Name, PackageFullName 按关键字删除 Get-AppxPackage *camera* | Remove-AppxPacka ...

  6. 球队以及得分计算的SQL语句

    首先题目是这样的: 球队表teams 比赛表matches 赢了得3分,平局的得1分,输了得0分. 思路: 一个球队的成绩分为两部分,作为主队的得分和作为客队的得分: 计算出一次比赛中具体得了多少分, ...

  7. 嵌入式开发之信号采集同步---VSYNC和HSYNC的作用以及它们两者之间的关系

    VSYNC和HSYNC的作用以及它们两者之间的关系 VSYNC和HSYNC的作用以及它们两者之间的关系 VSYNC和HSYNC是什么 VSYNC: vertical synchronization,指 ...

  8. bash脚本IFS=',' read的意思

    IFS is the Input Field Separator, which means the string read will be split based on the characters ...

  9. jquery获取checkbox状态

    $("#id").is(":checked"); 返回true false

  10. 【ARDUINO】HC-05蓝牙不配对问题

    除了刷主从之外,不配对的原因有1:已经配对其他设备,需用AT+RMAAD来移除.2.默认为蓝牙由绑定指令设置,需改为任意地址连接模式AT+CMODE=1 //#define AT 2 #define ...