Creación de una forma de rectángulo con sólo dos bordes redondeados
Puedo crear una forma que sea un rectángulo con todos los bordes redondeados. Sin embargo, lo que estoy deseando es una forma de rectángulo con sólo 2 de los bordes redondeados. es posible?
Estoy esencialmente hackear juntos un ListView que se parece a una burbuja con bordes redondeados. Estoy mirando para agregar una cabecera que tenga los dos bordes superiores redondeados y un pie de página con los dos bordes inferiores redondeados.
- Cómo hacer gradiente de fondo en android
- Cómo dibujar triángulo lleno en el lienzo android
- Frontera con título alrededor de un LinearLayout
- Diseño de diseño de Android
- ¿Cómo enviar datos multipart / form a un servidor web desde android?
- Android define la forma XML como dibujable mediante programación
- Forma personalizada mientras conversas en android usando un archivo xml
- Forma personalizada de Android
- Cómo enmascarar una región simple al pintar en Android?
- Forma dibujable que no se muestra cuando se utiliza en combinación con el atributo android: drawableBottom.
- Especificación de recortes transparentes en xml
- Forma dibujable como fondo, una línea en la parte inferior
- Android - ¿Cómo combinación Shape drwable y el color de texto diferentes estados para el botón?
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="10dp"> <solid android:color="#FFFFFF"/> <corners android:bottomRightRadius="0dp" android:bottomLeftRadius="0dp" android:topLeftRadius="15dp" android:topRightRadius="15dp"/> </shape>
Este código está funcionando (¿ya?) Android versión 2.2. Refiriéndose a la documentación , el código debería tener el siguiente aspecto:
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="10dp"> <solid android:color="#FFFFFF"/> <corners android:radius="2dp" android:bottomRightRadius="0dp" android:bottomLeftRadius="0dp" android:topLeftRadius="15dp" android:topRightRadius="15dp"/> </shape>
Puede que esto le resulte útil.
<?xml version="1.0" encoding="utf-8"?> <!-- res/drawable/rounded_edittext.xml --> <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="10dp"> <solid android:color="#FFFFFF"/> <corners android:bottomRightRadius="0dp" android:bottomLeftRadius="0dp" android:topLeftRadius="15dp" android:topRightRadius="15dp"/> </shape>
Cambié el atributo android:radius
a android:topRightRadius
y android:topLeftRadius
Creo que lo mejor (para mi comprensión de su pregunta) es crear una imagen 9patch y utilizarla como fondo – se puede definir para estirar como se necesita y establecer en el nivel XML ahorro de trabajo de código
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="10dp"> <solid android:color="#FFFFFF"/> <corners android:bottomRightRadius="0dp" android:bottomLeftRadius="0dp" android:topLeftRadius="15dp" android:topRightRadius="15dp"/> </shape>
Utilice el código anterior
Intento dibujar un rectángulo redondeado, y luego dos rectángulos adicionales del mismo tamaño que el radio de la esquina del rectángulo redondeado, y colocarlos en las esquinas que no quieren ser redondeados.
Así por ejemplo, un rectángulo redondeado con un radio de 15px, y dos rectángulos regulares 15x15px, colocado en las esquinas del rectángulo redondeado que no debe ser redondeado.
EDIT: Al volver a leer su pregunta, es mejor que realice una imagen sencilla de 9 parches para la parte superior e inferior de su lista. Se extendían a cualquier tamaño de esa manera sin pixelización. Eso requeriría crear las imágenes de antemano, sin embargo, y hacer cosas con las formas de rectángulo sería más fácil de modificar en el código más tarde. Sin embargo, la forma de 9 parches sería menos de un hack.
Dibuje un rectángulo redondeado y luego dibuje un rectángulo normal sobre el redondeado con el mismo color.
- IllegalStateException: Fragmento ya agregado en el fragmento tabhost
- Divisores de dibujo de Android GridView