需求
绘制一条虚线
具体实现
创建drawable文件,作为background使用。
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line" >
<stroke
android:width="1px"
android:color="#dddddd"
android:dashGap="5dp"
android:dashWidth="5dp" />
</shape>
在布局中使用
<FrameLayout
android:layout_width="match_parent"
android:layout_height="2px"
android:background="@color/white">
<View
android:layout_width="match_parent"
android:layout_height="2px"
android:background="@drawable/line_imaginary_gray"
android:layerType="software" />
</FrameLayout>
常见坑
1. drawable文件中的width必须 小于 控件中height
2. 系统4.0以后虚线变实现,添加属性 layerType="software"
3. 在外面包裹父布局,忽略掉外部背景色的干扰