2012-08-13 15 views
6

¿Cómo puedo hacer HUD con múltiples líneas? Él es mi código, pero el labelText es una líneaHUD con líneas múltiples

HUD = [MBProgressHUD showHUDAddedTo:[[TTNavigator navigator] window] animated:YES]; 
HUD.customView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"noImage.png"]]; 
HUD.mode = MBProgressHUDModeCustomView; 
HUD.delegate = self; 
HUD.labelText = @"text1 \n text2"; 
[HUD hide:YES afterDelay:3]; 
+0

http://stackoverflow.com/a/15031656/1557383 u puede probar esto. Funcionó para mí – vinny

Respuesta

14

uso del método detailsLabelText, es decir

HUD.detailsLabelText = @"your next line here" 

usted puede cambiar el estilo usando detailsLabelFont.

+0

¡Qué listo! Resolvió mi problema a la perfección! – Calios

+1

a partir de v1.0.0 (tal vez incluso antes) detailsLabelText está en desuso y se le recomienda utilizar detailsLabel.text –

2

No estoy seguro pero hay que modificar el código del archivo MBProgressHUD.m.

En el archivo MBProgressHUD.m, hay un método - (void)setupLabels. En ese método, se crea una etiqueta. Haga que la etiqueta de etiquetas múltiples establezca su propiedad numberOfLines.

Ex:

label.numberOfLines = 2;

esperar que funcione ..

+0

¿Estás seguro de esa función? No lo tengo en 'MBProgressHUD.m' – Luda

+0

Ya estoy, claro ... Está en el archivo MBProgressHUD.m – Maulik

+0

Por favor, eche un vistazo en la pantalla de impresión http://i46.tinypic.com/2u5qpvl.png – Luda

6

La manera más fácil (la ampliación de la respuesta de Jon Madison):

hud.labelText = @"Your first line of text is"; 
hud.detailsLabelText = @"followed by your next line of text"; 
hud.detailsLabelFont = hud.labelFont; 
Cuestiones relacionadas