安卓虚线/点线问题?

10

当我使用Android虚线时,在小屏幕上运行良好,但在三星S3设备和更高版本中无法正常工作

截图

三星设备

以及

小屏幕

drawable/dashline.xml

<?xml version="1.0" encoding="utf-8"?>
 <shape xmlns:android="http://schemas.android.com/apk/res/android"
   android:shape="line" >

     <stroke
        android:dashWidth="20sp"
        android:dashGap="20sp"
        android:width="2dp"
         android:color="#FF0000" />

     </shape>

XML

 <ImageView
    android:id="@+id/button1"
    android:layout_width="fill_parent"
    android:layout_height="6dp"
    android:background="@drawable/dash_line" />   

如果有人能在这方面帮助我,任何想法都会受到赞赏。


重复的问题:http://stackoverflow.com/a/26296229/185022 - AZ_
5个回答

28

谢谢 @Pallavi - Abhishek
永远想不到,谢谢。 - Mike6679

2
尝试将 sp 更改为 dp 以实现以下目的:
<stroke
    android:dashWidth="20dp"
    android:dashGap="20dp"
    android:width="2dp"
    android:color="#FF0000" />

1
笔画宽度必须小于绘制物的高度。
(笔画宽度是线条的宽度。尺寸高度是可绘制物的高度。绘制时,线条位于可绘制物的中心。如果尺寸高度<=笔画宽度,则线条不会显示。)
在此处查看代码:https://dev59.com/SHvaa4cB1Zd3GeqPINJK#28867281

0

sp使用设备的字体设置比屏幕密度(dp)更为重要的比例因子 - 不要用sp来设置非文本相关的尺寸。


0
将以下行添加到AndroidManifest文件的application标记中。
android:hardwareAccelerated="false"

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接