Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android Dash/doted line issue?

When I am using android dotted line its working fine in Small screens, but not working in Samsung S3 device and higher versions.

Screenshots

samsung Device

And

Small screens

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" />   

If someone can help me out in this, any idea is appreciable.

like image 378
NagarjunaReddy Avatar asked Sep 24 '13 14:09

NagarjunaReddy


3 Answers

Stroke WIDTH must be smaller than the size HEIGHT.

(Stroke width is the width of the line. Size height is the height of the drawable. When drawn, the line is centered in the drawable. If size height <=stroke width, the line won't show up.)

See code here: https://stackoverflow.com/a/28867281/3817964

like image 141
furnaceX Avatar answered Sep 30 '22 21:09

furnaceX


set android:layerType="software" for your imageView. Check the docs for android:layerType.

like image 20
Pallavi Avatar answered Sep 30 '22 22:09

Pallavi


Try changing sp to dp to:

<stroke
    android:dashWidth="20dp"
    android:dashGap="20dp"
    android:width="2dp"
    android:color="#FF0000" />
like image 22
waqaslam Avatar answered Sep 30 '22 23:09

waqaslam