2009-06-05 18 views
67

¿Cómo puedo establecer el título de un UIButton alineado a la izquierda, y cómo puedo mostrar varias líneas de texto en un UIButton?UIButton alineación de títulos y soporte de líneas múltiples

+0

Por favor, actualice las etiquetas o pregunta que nos dicen lo que la tecnología se trata. –

+1

Parece que el desarrollo de iPhone. – Kekoa

+22

Raju, realmente debería aceptar sus respuestas ... eso es lo que hace que el sistema funcione. – Codezy

Respuesta

129

para establecer la alineación de un UIButton, mira en el inspector de atributos en el Interface Builder para el botón. Hay una sección llamada Alineación. Ajústelo a la izquierda. O bien, o lo que quieras.

enter image description here

hacerlo en código, utilice la propiedad de contentHorizontalAlignmentUIControl. Usted puede configurarlo para que cualquiera de estas propiedades:

UIControlContentHorizontalAlignmentCenter
UIControlContentHorizontalAlignmentLeft
UIControlContentHorizontalAlignmentRight
UIControlContentHorizontalAlignmentFill

[myButton setContentHorizontalAlignment:UIControlContentHorizontalAlignmentRight]; 

Ninguna de estas opciones parece particularmente buena (como se puede ver arriba), y es posible que tenga podría tener más suerte usando la propiedad contentEdgeInsets de UIButton para cambiar la posición del contenido.

Para ajustar un título de varias líneas en un UIButton, check this forum post que describe el cambio de la etiqueta del botón.

O puede utilizar este código para hacer rápidamente un botón de línea 2:

myButton.titleLabel.textAlignment = UITextAlignmentCenter; 
myButton.titleLabel.lineBreakMode = UILineBreakModeCharacterWrap; 
[myButton setTitle:@"Siegfried\nRoy" forState:UIControlStateNormal]; 

enter image description here

Raju, no se olvide de marcar preguntas como aceptado.

+11

no lo recibió lo suficiente como para marcar algunas de sus preguntas respondidas ;-) –

+2

'numberOfLines' funciona en iOS5, pero todavía necesita establecer' lineBreakMode' para iOS 4. –

+0

Tenga en cuenta que al configurar el título, es importante usar el mensaje que especifica el UIControlState. Si lo configura como una propiedad, la etiqueta no cambiará de tamaño para el nuevo texto. Ver: http://stackoverflow.com/questions/4576331/uibutton-label-text-is-being-clipped – AndrewCr

187

Aquí está el código para hacer la alineación UIButton en el código también: -

[myButton setContentHorizontalAlignment:UIControlContentHorizontalAlignmentLeft]; 
+0

funcionando bien ......... –

7

En realidad, se puede establecer el lineBreakMode a UILineBreakModeWordWrap o UILineBreakModeCharacterWrap. Esto rompe el texto en múltiples líneas si es necesario.

6

probar este

myButton.titleLabel.textAlignment = UITextAlignmentLeft; 
    myButton.titleLabel.lineBreakMode = UILineBreakModeCharacterWrap; 
    myButton.titleLabel.numberOfLines = 0; 
3

Para añadir un efecto Párrafo se puede cambiar el tamaño del título.

For alinea effect

Cuestiones relacionadas