2012-10-11 41 views
12

Android me está matando.¿Cómo corregir el conjunto de esquinas redondeadas en Android para diseño Relativo o de lo contrario?

QUIERO puse esquinas redondeadas para la disposición relativa, es simple

XML Disponibles puede parecer

<?xml version="1.0" encoding="utf-8"?> 
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shape="rectangle" > 
<padding android:left="1dp" android:top="1dp" 
      android:right="2dp" android:bottom="2dp" /> 
    <solid android:color="#FFFFFF" /> 

    <corners android:radius="15dp" /> 

    <stroke 
     android:width="2dp" 
     android:color="#FFF" /> 

</shape> 

Pero. Si inserto en el diseño Relativo otro diseño o widget como ImageView no tengo cliped childs - vea la imagen enter image description here

Como puede ver no conseguí cliped elemento hijo.

¿Cómo está el rigth?

Tal vez sea ayuda quiero o Esta esquinas redondeadas funciona como en IOS

givenView.layer.cornerRadius =roundAngle; 
    [givenView.layer setBorderColor:[[borderColor colorWithAlphaComponent:alphaBorder] CGColor]]; 
    [givenView.layer setBorderWidth:borderWidth]; 
    givenView.clipsToBounds = YES; 

También quiero mostrar todos los que piensan que el relleno es la solución:

enter image description here

Aquí establecer el relleno.

por subestimar correctamente problema vistazo a la imagen La jerarquía

enter image description here

En aquí:

RelativeLayout - xml han desribed como fondo,

LinearLayout - contenedor para objetos personalizados con diseños complejos que contiene la imagen como fondo y otros widgets

profileStatistic - widget complejo personalizado con muchos subobjetos en el diseño de outhere.

cuadro completo de diseño es:

enter image description here

y el diseño de controles dentro (profileStatistic):

enter image description here

P. S. No necesito 9-path. ¡Pregunta no sobre el camino 9!

Respuesta

1

si ve que se está aplicando la esquina redondeada de la imagen. pero hijo del diseño no tiene rect redondo. es por eso que ese rincón se está saliendo del fondo del padre. para solucionarlo, proporcione algo de relleno al diseño principal para que no salga del fondo del diseño principal. O puede aplicar el mismo tipo de forma de esquina redondeada dibujable a la vista de niño también.

+0

No es correcto. Aquí está la situación de Bacuse: si las esquinas redondeadas se establecen en 15dp, y el relleno (para corregir) se establece en 5dp, obtengo un espacio entre el borde del marco y el widget de contenido interno. –

+0

que dado un relleno de 5dp no es suficiente para el radio de 15dp.por eso esas cornetas se están apagando. puedes aumentar ese relleno y comprobar. – Raj

Cuestiones relacionadas