废话不多说。。。上图
1. 水平虚线
2. 竖直虚线
在项目的res文件夹drawable下面去创建:
水平虚线:line_stroke
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line">
<stroke
android:width="1dp" ---》 宽度
android:color="@color/line" ----》虚线颜色
android:dashGap="4dp" ----》虚线间隔宽度
android:dashWidth="6dp"/> ---》虚线的宽度
</shape>
竖直虚线:line_vertical
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:left="-600dp"
android:right="-600dp"> ---》 让其居中显示
<rotate android:drawable="@drawable/line_stroke" ----》引用水平虚线的drawable
android:visible="true"
android:fromDegrees="90" ---》设置旋转度90度
/>
</item>
</layer-list>
最后一步。。。。xml
<TextView
android:layout_width="2dp"
android:layout_height="match_parent"
android:layout_centerHorizontal="true"
android:layerType="software" ---》记得添加属性
android:background="@drawable/line_vertical"/>
<TextView
android:layout_width="match_parent"
android:layout_height="2dp"
android:layout_centerVertical="true"
android:layerType="software" ---》记得添加属性
android:background="@drawable/line_stroke" />
总结,肯定有人疑问为什么要用textView去显示虚线呢,不用View去展示(layerType属性也必须加上,否者也会报错)
之前在项目中用了8.0之后,有时候在项目中会神奇地报错:
错误呢,之前出错的,现在找不到了
我讲述一下吧。。。。
主要报错的是绘制的竖直虚线
它会报你res下drawable中的line_vertical中的no drawable(希望能够帮助到你)