Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to do multiline UILabel in ios?

I'm dynamically populating the title (UILabel). Sometime it's bit too long and IOS squeeze the font to fit in the width. Is there a way to do multiline with using same font size?

like image 767
HardCode Avatar asked Nov 03 '11 13:11

HardCode


People also ask

How do you make UILabel two lines?

To set the number of lines we want our UILabel to support we will use a numberOfLines property. For example, to make UILabel support two lines, we will set the numberOfLines property to 2.

What is UILabel in Swift?

A view that displays one or more lines of informational text.


4 Answers

Set adjustsFontSizeToFitWidth to NO and numberOfLines to 0.

numberOfLines Docs

This property controls the maximum number of lines to use in order to fit the label’s text into its bounding rectangle. The default value for this property is 1. To remove any maximum limit, and use as many lines as needed, set the value of this property to 0.

If you constrain your text using this property, any text that does not fit within the maximum number of lines and inside the bounding rectangle of the label is truncated using the appropriate line break mode.

When the receiver is resized using the sizeToFit method, resizing takes into account the value stored in this property. For example, if this property is set to 3, the sizeToFit method resizes the receiver so that it is big enough to display three lines of text.

You may additionally want to specify the lineBreakMode unless the default UILineBreakModeWordWrap is suitable for what you want.

like image 189
Sam Avatar answered Sep 20 '22 23:09

Sam


Use UILabel properties as below :

textLabel.lineBreakMode = NSLineBreakByWordWrapping;   textLabel.numberOfLines = 0; 
like image 26
Sagar Surani Avatar answered Sep 21 '22 23:09

Sagar Surani


Yes, you set the numberOfLines to 0, and the .lineBreakMode to UILineBreakModeWordWrap in code, or the equivalents if your label is defined in IB.

like image 33
jrturton Avatar answered Sep 23 '22 23:09

jrturton


I just used LineBreak mode to Truncate Tail and setNumberOfLines to 0 and its working for me. the label is of multiline now.

like image 45
Waqas Avatar answered Sep 20 '22 23:09

Waqas