【Android使用Shape绘制虚线,在4.0以上的手机显示实线】解决方式

时间:2022-05-22 06:09:37

问题描写叙述:

用下面代码绘制虚线:

<span style="font-family:Comic Sans MS;font-size:18px;"><?

xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="line" >
<!--显示一条虚线。破折线的宽度为dashWith,破折线之间的空隙的宽度为dashGap,当dashGap=0dp时。为实线 -->
<stroke
android:dashGap="3dp"
android:dashWidth="3dp"
android:width="1dp"
android:color="#dcdcdc" />
<!-- 虚线的高度 -->
<size android:height="1dp" />
</shape></span>

在布局文件里引用画虚线的代码例如以下:

<span style="font-family:Comic Sans MS;font-size:18px;">            <ImageView
android:layout_width="match_parent"
android:layout_height="2dip"
android:layout_margin="5dip"
android:background="@drawable/dotted_line" /></span>

注:dotted_line就是shape文件的名称

在adt自带的graphical layout视图中的图形是:

【Android使用Shape绘制虚线,在4.0以上的手机显示实线】解决方式

没有问题,可是执行到手机上却变成了一条实线。。!

,有木有!!!

解决方式:

找到project的androidmanifest.xml文件。在application标签中加入属性值(禁用硬件加速)。例如以下:

【Android使用Shape绘制虚线,在4.0以上的手机显示实线】解决方式

然后再次执行代码,问题解决!