2012-07-27 44 views
6

Tengo un problema con la etiqueta de esquinas.Android: las esquinas redondeadas funcionan de forma diferente en diferentes versiones de Android

Este es mi archivo de formas.

<stroke 
    android:width="1dp" 
    android:color="#ff999999" /> 

<size android:height="40dp" /> 

<gradient 
    android:angle="90" 
    android:centerColor="#f5f5f5" 
    android:endColor="#fcfcfc" 
    android:startColor="#efefef" 
    android:type="linear" /> 

<corners 
    android:bottomLeftRadius="0dip" 
    android:bottomRightRadius="8dip" 
    android:topLeftRadius="8dip" 
    android:topRightRadius="0dip" /> 

Pero cuando lo fijo para el fondo de la vista. Muestra una forma diferente en Android 2.2 y Android 4.0.3. Cuando se está ejecutando en Android 4.0.3: running on Android 4.0.3 Y en Android 2.2: Running on Android 2.2

favor ver botón "ANUNCIAR". ¿Sabes por qué? ¿Y cómo puedo solucionarlo? ¡Por favor, ayúdenme! Lo siento porque mi inglés no está muy bien.

+0

Android 4.3 no existe. La versión actual es 4.1.1 –

+0

Probablemente se refería a 4.0.3 – kcoppock

+0

sí, lo siento. Me refiero a 4.0.3 – gZerone

Respuesta

13

Esto era un error en las versiones anteriores a la API 12 del SDK, donde se invirtieron los radios inferiores izquierdo e inferior derecho. Lo que puede hacer (y hay mucha más información en this link) es crear una carpeta res/drawable-v12, y copiar estos dibujables en ella con los radios invertidos (es decir, el radio inferior izquierdo se convierte en el radio inferior derecho, y viceversa), y estos elementos dibujables se seleccionará automáticamente para dispositivos por encima de API 12.

+0

Gracias Kcoppock. Es realmente útil para mí – gZerone

+0

De nada. :) Si resuelve su problema, no olvide marcar esta respuesta como "aceptada". – kcoppock

Cuestiones relacionadas