[英]Android dashed divider in ListView
我想为列表视图绘制虚线分隔线。 但是我失败了。 在StackOverflow中有一些类似的问题,但是都没有解决我的问题。
这是我创建虚线分隔线的步骤:
创建一个list_divider.html
<?xml version="1.0" encoding="utf-8"?><layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="line"> <stroke android:color="#ff0000" android:dashWidth="10px" android:dashGap="10px" /> </shape> </item> </layer-list>
我的布局包含列表视图
<ListView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@android:id/list" android:layout_gravity="center_horizontal" android:footerDividersEnabled="true" android:divider="@drawable/list_divider" android:dividerHeight="1px"/>
然后,在UI编辑器内部的预览中,就像它可以工作:
有人可以给我提示吗? 谢谢。
PS:我使用layer-list的原因是将来我可能需要画两条线。
其文档记录在这里: https : //code.google.com/p/android/issues/detail?id=29944
您有2个选择:
android:hardwareAccelerated="false"
listView.setLayerType(View.LAYER_TYPE_SOFTWARE, null)
或xml android:layerType="software"
这太让我头疼了!
您是否将可绘制list_divider.html
命名为list_divider.html
? 将其重命名为list_divider.xml
。 我很惊讶它可以在UI编辑器中工作。
第二件事可能会产生影响:对于分隔符的大小,请使用dp
而不是px
作为单位。 在Listview和分隔符xml中。 您永远不知道10像素是多少。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.