2011-09-09 27 views
12

Quiero crear un UIButton personalizado con forma rectangular. para esto estoy usando la vista rectangular como fondo para UIButton y haciendo que el color de fondo de los UI sea de color claro. Pero el límite de UIbutton todavía permanece. ¿Alguna sugerencia sobre cómo hacer que la frontera desaparezca? Gracias por cualquier ayuda de antemano ..UIButton con color de borde personalizado, iPhone

+0

podría ser un duplicado de http://stackoverflow.com/ preguntas/2808888/is-it-even-possible-to-change-a-uibuttons-background-color. Mira esa pregunta. – jergason

+0

Esto no es un duplicado de la referencia que usted dio ... están discutiendo el color de fondo cuando él está preguntando por el color del borde. – Prabh

+0

Puede ser un duplicado de http://stackoverflow.com/questions/8162411/how-to-create-border-in-uibutton Lo mejor de la suerte – Ayaz

Respuesta

34

Prueba esto:

UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; 
    [button.layer setBorderColor:[[UIColor clearColor] CGColor]]; 

pero no se olvide de añadir en su .h o archivo .m

#import <QuartzCore/QuartzCore.h> 
+0

Muchas gracias ... esto es exactamente lo que estaba buscando. – alekhine

+0

Gracias, funciona genial. – Xtrician

+1

necesita agregar el ancho del borde también: '[button.layer setBorderWidth: 1.0f];' – youssman

0

Debe establecer el tipo de su UIButton-Custom, no Rounded Rect (si está creando a través de botón IB).

Si va a crear mediante programación UIButton entonces este código:

UIButton *but = [UIButton buttonWithType:UIButtonTypeCustom]; 

Y después de que usted puede hacer sus propias personalizaciones.

11

perdí unos minutos y se frustró que la frontera no estaba mostrando aunque estaba configurando la propiedad de capa como se sugirió anteriormente.

Cuando establecí el ancho usando lo siguiente, vi el borde del botón.

[[button layer] setBorderWidth:2.0f]; 
1

Puede establecer las propiedades del borde en el CALayer accediendo a la propiedad de capa del botón.

Añadir cuarzo

#import <QuartzCore/QuartzCore.h> 

Establecer las propiedades del botón:

[[myButton layer] setBorderWidth:2.0f]; 
[[myButton layer] setBorderColor:[UIColor AnyColor].CGColor]; 
0
button.layer.borderColor = UIColor.orangeColor().CGColor 

veloz ejemplo para el borde naranja

Cuestiones relacionadas