Android línea discontinua dibujable potencial ICS error

La siguiente es una línea quebrada, definida como un ShapeDrawable en XML:

<shape
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="line">

    <size
        android:height="2dp"
        android:width="700dp" />

    <stroke
        android:width="1dp"
        android:color="@android:color/black"
        android:dashWidth="1dp"
        android:dashGap="2dp" />

</shape>

Esto dibujará una buena línea de puntos en varios de pan de Jengibre de teléfonos. En el Galaxy Nexus sin embargo, los guiones parecen ser ignorados y la forma se dibuja como una línea contigua. Aún más curioso, un emulador ejecuta ICS va a representar correctamente con los guiones, es el dispositivo físico de cagarla.

Que me estoy perdiendo algo que es obvio? O es esto realmente un bug con Android 4.0? La línea se utiliza en varios lugares. Aquí es un ejemplo de ImageView:

<ImageView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_marginLeft="@dimen/observation_observe_side_margin"
    android:layout_marginRight="@dimen/observation_observe_side_margin"
    android:layout_marginTop="16dp"
    android:contentDescription="@string/dotted_line_description"
    android:src="@drawable/dotted_line" />
InformationsquelleAutor Chris Horner | 2012-06-01

2 Kommentare

  1. 48

    El problema se registra en http://code.google.com/p/android/issues/detail?id=29944 tiene un comentario de la aplicación de la siguiente a la vista:

    view.setLayerType(View.LAYER_TYPE_SOFTWARE, null)

    Esto funcionó para mí.

    • Tenga en cuenta que si usted no desea editar la vista mediante programación se puede también agregar el atributo android:layerType="software" a la definición XML.
    • API 11+ developer.android.com/reference/android/view/…
    • así, en el ejemplo de la pregunta. pondría android:layerType="software" a la ImageView o la shape?
    • Yo lo haría en el ImageView

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea