最近的项目中给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. 380. Intersection of Two Linked Lists【medium】

    Write a program to find the node at which the intersection of two singly linked lists begins. Notice ...

  2. [转]Linux(Ubuntu)下如何安装JDK

    转自:http://www.cnblogs.com/savagemorgan/p/3650926.html 注:这篇博客里面有两个问题 1.解压的时候不用sudo,mv的时候不用sudo,我的安装路径 ...

  3. js上传控件 plupload 使用记录

    最近一个项目需要使用一个上传控件进行多图片上传,给用户更好的体验,找到了plupload,用了一下感觉还是不错的, 1.从官网上  可以获得例子 ,我集成到了jsp,如下: <%@ page l ...

  4. debian下为arm开发板创建基于debian或emdebian的根文件系统

    Debian系统本身包含对arm的支持,其包含的软件包最多,但是最终的文件系统要大一些. emdebian 是一个非常好用的嵌入式linux操作系统,其基于debian的特点对于熟悉debian系统的 ...

  5. glibc中malloc的详细解释_转

    glibc中的malloc实现: The main properties of the algorithms are:* For large (>= 512 bytes) requests, i ...

  6. C#非常规调试场景总结

    场景1:类库独立调试.          方法:可以将类库项目修改成控制台程序,然后增加一个静态的main函数的方式来调试 场景2:程序需要连接数据库,本机调试的时候因为权限问题无法连接上数据库,只能 ...

  7. mfc小工具开发之定时闹钟之---时间获取和音频播放

    1.这里的音频文件是指*.wav格式的音频,参考了飞雪的音频文件,版本号: 飞雪桌面日历 v2.84.1025 绿色版 http://www.piaodown.com/down/soft/18512. ...

  8. asp.net调用系统设置字体文本框的方法

    本文实例展示了asp.net调用系统设置字体文本框的方法,是进行web开发中很实用的技巧.具体实现步骤如下: 一.调用系统字体文本框 首先在bin文件夹右击-->添加引用-->.net标签 ...

  9. ChemDraw进行自动调整的步骤

    说到化学绘图软件那就不得不提ChemDraw,起非常的经典在国内外都得到了普遍应用,最新版是ChemDraw 15.1 Pro.在使用ChemDraw化学绘图工具绘制化学图形的时候,需要循序渐进一步一 ...

  10. 自己搭建v,p,n过程

    安装dockeryum install -y docker把docker设置为服务systemctl enable docker.service启动dockersystemctl start dock ...