ListView底部分隔线的问题

发布时间:2017-1-17 19:04:17 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"ListView底部分隔线的问题",主要涉及到ListView底部分隔线的问题方面的内容,对于ListView底部分隔线的问题感兴趣的同学可以参考一下。

ListView底部分隔线的问题        在工作中遇到了一个难题,就是一个listView在最下面的一个item下面没有分割线,要求是必须得有这条分割线。经过一通研究发现了这个奇怪的现象:        1. ListActivity有这条底部分割线。        2.在Activity中只有listview,没有别的控件的话也会有。        其实ListActivity也是一个Activity,只不过在其中使用了SetContentView(listView)方法设置了一个listView作为其显示的View而已。所以结论就是只要这个activity调用了SetContentView(listView)就会有这条底部分割线。        那么什么情况下才不会有这条分割线呢?在Activity中如果调用setContentView(View)而ListView只是内嵌入到这个View的话有可能会没有这条分割线。        分析其原因:通过加断点调试发现在listView中,所有的分割线都是通过画一个很窄的矩形来实现的,但是在画分割线前都会都会判断目前的位置A和listView的长度B,如果A=B了,那么就不会画这条分割线了。但是将Listview嵌入到一个View中,一般会设置为高度为wrap_content,这种情况下,最后那条分割线的位置刚好等于listView的高度,所以系统不会画上这条分割线。那要怎么样才会画上呢?很简单,将ListView的高度设置为fill_partent就可以了。       当然以上所说的都是item很少的情况下,如果item很多以至于必须显示滚动条的话,那最后一个item下面是肯定不会有分割线了。 自己测试:在一个Activity中只有一个ListView,把它的layout_height修改为fill_parent,最底下的线是可以显示出来的,但修改为wrap_content就显示不出来了,如下图: 自己测试:在一个Activity中最上边和最下边都有个TextView,ListView夹在中间,把它的layout_height为fill_parent或者wrap_content,最底下的线是可以显示出来的。 布局为: [html] view plaincopy <?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"       >       <TextView            android:id="@+id/mTop"           android:layout_width="wrap_content"           android:layout_height="wrap_content"           android:layout_alignParentTop="true"           android:text="HelloWorldTop"           />       <TextView            android:id="@+id/mBottom"           android:layout_width="wrap_content"           android:layout_height="wrap_content"           android:layout_alignParentBottom="true"           android:text="HelloWorldBottom"           />       <ListView           android:id="@+id/mList"           android:layout_width="fill_parent"           android:layout_height="wrap_content"           android:layout_below="@id/mTop"           android:layout_above="@id/mBottom"/>   </RelativeLayout>   效果为: 转摘自:http://blog.csdn.net/xiaoxiaobian3310903/article/details/7182231

上一篇:platform _device和platform_driver注册过程
下一篇:最全ASCII对应码表-键值

相关文章

相关评论