使用下面代码设置分隔线颜色,无效,竟然看不到分割线了,即使设置分割线宽度为100,也看不到,从这两行代码看,应该没什么问题吧,也是很常规的写法。
在CODE上查看代码片派生到我的代码片
listView.setDividerHeight(1);
listView.setDivider(new ColorDrawable(Color.GRAY));
为什么无效呢?看看setDivider的源码
在CODE上查看代码片派生到我的代码片
public void setDivider(Drawable divider) {
if (divider != null) {
mDividerHeight = divider.getIntrinsicHeight();
} else {
mDividerHeight = 0;
}
mDivider = divider;
mDividerIsOpaque = divider == null || divider.getOpacity() == PixelFormat.OPAQUE;
requestLayout();
invalidate();
}
下面代码
在CODE上查看代码片派生到我的代码片
if (divider != null) {
mDividerHeight = divider.getIntrinsicHeight();
如果参数不为空,要获取一个内部默认的高度,这个高度是多少呢,看下面代码
在CODE上查看代码片派生到我的代码片
public int getIntrinsicHeight() {
return -1;
}
高度返回-1
从源代码看,只要调用了ListView的setDivider接口,mDividerHeight就会被置为0或-1,所以你根本看不到线,如果想看到线,就要把调用顺序反过来,如下
在CODE上查看代码片派生到我的代码片
listView.setDivider(new ColorDrawable(Color.GRAY));
listView.setDividerHeight(1);
分享到:
相关推荐
实现android listview分割线功能
改代码主要是针对listview修改指定item字体颜色
android listView 改变选中行的 字体颜色和 图片
android listview点击保持背景颜色,实现已读功能
我们常见的androidlistview 都是整体改变背景颜色,我今天上传的是 动态改变listview 其中一条或者多条的背景颜色,以及改变item的颜色。 不需要添加list的点击事件 就可以完成。
ListView中没有默认的选择颜色,只有选择Item后的焦点颜色,鼠标点击时Item有颜色,放开鼠标后颜色也就没有了,要实现放开鼠标后选择项的背景还是有颜色的。
Android使用ListView实现时间轴
Android ListView卡片效果,源码下载。
NULL 博文链接:https://flycatdeng.iteye.com/blog/2273790
Android ListView边框圆角美化,可以用来仿iphone的个别界面。相当有用。美观。
Android ListView 实例源码
android listview 固定表头,固定前几列
Android listview 下拉 刷新
android ListView简单用法
Android listview viewpager 滑动 跳动 冲突解决 ListView中嵌套ViewPage有或者滑动手势冲突解决 blog 地址 : http://blog.csdn.net/aaawqqq/article/details/43824631
这是我自己的写的在listview里面使用radiobutton
android 布局中网格视图 ListView的简单运用 采用的是最简单的ArrayAdapter适配器
在实际开发中,很多项目都用到了,listView添加头部的写法,疫情我以为很难,最近偶然发现很简单,所以下了一个例子和大家交流
本文实例讲述了Android编程简单设置ListView分割线的方法。分享给大家供大家参考,具体如下: <LinearLayout xmlns:android=http://schemas.android.com/apk/res/android android:layout_width=wrap_content ...