Android开发 ListView底部分割线不显示的解决办法
来源:互联网 发布:苹果程序员培训机构 编辑:程序博客网 时间:2024/04/28 06:32
转载请说明出处,本文来自Android菜鸟:http://blog.csdn.net/android_cai_niao/article/details/42710609 QQ:2717521606
定义了一个ListView如下:
此布局为在页面的居中位置显示一个ListView,假如给这个ListView填充3条数据,效果图为:
此时可看到ListView居中显示,在ListView的顶部和底部没有显示分隔线,如果项目需求中需要显示这两条线怎么办?我百度的时候发现千篇一律的都是一个说法,说ListView的高度要设置为match_parent,还有要设置:android:headerDividersEnabled="true"、android:footerDividersEnabled="true"。这个答案实在是太差,因为有的时候ListView的高度就是需要设置为wrap_content。
其实这个解答,只要我们在写代码的时候认真的去看一下SDK的文档说明即可知道如何解决,如在android:headerDividersEnabled
="true"这个属性,很明显说的是允许叶眉的分隔线,有的人说设置了这个为true也没起作用,其实是没有看到这个属性的说明,我们在xml布局中输入这个属性的时候会有代码提示,这个时候可以选择设置哪个属性,并且有这个属性的相关说明,截图如下:
如上图,对 android:footerDividersEnabled 属性的说明为“When set to false, the ListView will not draw the divider before
each footer view. [boolean]",英文不好的拿有道词典来翻译一下就能理解,大概意思为“当设置为false的时候,这个ListView将不画footer view之前的分隔线”,就此想要显示footer view之前的分隔线,那么这个属性要设置为true,但是设置为true并运行的时候发现并没有显示出footer view之前的分隔线,为什么?这是因为我们没有理解好属性的说明,人家说的是footer view之前,而我们现在的ListView有footer view吗?没有,所以问题就出在这里了,你把footer view加上即可,如果说你的ListView确实不需要header view和footer view,但是又需要显示出ListView顶部和底部的分隔线应该怎么办?So easy!我们给它设置一个空的view即可,如下:
再次运行,结果如下:
注:这是把ListView的第1条数据的顶部和最后一条数据的底部的分隔线显示出来,并不是说是ListView的顶部和底部的分隔线,因为ListView的高有可能是100dp,但是它里面有1万条数据。
经过实验,我发现android:headerDividersEnabled、 android:footerDividersEnabled这两个属性默认就是为true的,因此就不需要在xml中设置这两个属性了,多此一举。那这两个属性什么时候需要设置?当你的ListView有header view或footer view的时候,并且你不想显示顶部或底部的分隔线的时候,就需要设置对应的属性为false。
- Android开发 ListView底部分割线不显示的解决办法
- Android ListView显示底部的分割线
- [Android] ListView底部分割线显示问题
- listview 头部跟底部分割线不显示
- android控件ListView顶部或者底部也显示分割线
- ListView 底部分割线如何显示
- 【android】让listview的顶部或者底部也显示分割线
- Android ListView 最后一行分割线不显示
- ListView中不显示尾部的分割线footerDividersEnabled属性
- ListView分割线颜色不显示
- ListView底部分割线问题
- android---listView分割线的显示和隐藏
- Android ListView分割线显示和隐藏
- Android开发ListView 和Linearlayout的分割线
- Android开发: listview去除分割线
- Android开发: listview去除分割线
- Android--ListView 分割线
- UITableViewCell 多余的分割线不显示
- 解释Char占1字节char*占4字节
- 连接Mysql提示Can’t connect to local MySQL server through socket的解决方法
- Android SO文件保护加固——混淆篇(一)
- Timer中schedule()的用法
- 简历
- Android开发 ListView底部分割线不显示的解决办法
- java中HashMap,LinkedHashMap,TreeMap,HashTable,ConcurrentHashMap的区别和内部实现机制
- imx6 android源码下载方法
- 【ML】北大标注集,计算所标注集
- Java实现排序算法——堆排序
- 全球连贯漫游 畅游东西半球
- Node.js学习(一)——Node.js的安装和express初步使用
- 如何实现跑马灯效果
- 支持seaJs和requireJs的前端模块开发方案(二):业务页面和入口脚本init.js