Estaba creando una forma para usar como fondo de botón. Estoy haciendo una tira de botones, y el que está en el borde izquierdo tendrá esquinas redondeadas a la izquierda, y el último a la derecha tendrá esquinas redondeadas a la derecha. Esto es bastante simple, y los documentos de API te muestran cómo hacerlo. Sin embargo, cuando utilicé android:topLeftRadius
y android:bottomLeftRadius
, el resultado en la interfaz de usuario era como si puse bottomRightRadius. El mismo comportamiento fue cierto en el otro lado. Parece que quienquiera que haya implementado esto intercambió el bottomRight y bottomLeft. Publicaré un fragmento del código a continuación.Error cómico en la declaración de forma xml de Android
¿Hay alguna razón lógica para esto que me podría estar perdiendo? O, si esto fue un error por parte de los ingenieros de Android, ¿seguirá siendo compatible con versiones anteriores una vez que lo corrijan? Me imagino que tendrían que hacer todos los atributos nuevos para mantener los antiguos válidos (¿leftTop en vez de topLeft quizás?).
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" >
<shape>
<solid android:color="#99000000" />
<padding
android:top="8dp"
android:left="8dp"
android:right="8dp"
android:bottom="8dp" />
<corners
android:topLeftRadius="8dp"
android:bottomRightRadius="8dp" />
</shape>
</item>
posible duplicado de [¿Cómo hacer una forma con la esquina redondeada redondeada superior izquierda y la esquina redondeada inferior izquierda?] (http://stackoverflow.com/questions/3056232/how-to-make -a-shape-with-left-top-round-redondeada-esquina-e-izquierda-abajo-redondeada-co) – jamessan