Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Get Width of last line of multiline UILabel

I have a dynamic multi line UILabel and need to know the end of the text (X Coordinate) of the visible text (not the Label) so I can show something after the text. Is this possible?

thank you

like image 360
LeonS Avatar asked Jun 25 '12 12:06

LeonS


2 Answers

As far as I know , the best solution for this is to use a UIWebView instead of a UILabel. You just have to format the HTML for it to load and then add whatever you want to add after.

Example:

[webView loadHTMLString:[NSString stringWithFormat:@"<html><body><font face=\"arial\" size=\"2\">%@</font><font face=\"arial\" size=\"1\"> %@</font></body></html>",text1 , text2] baseURL:nil];

If you want to keep trying with UILabel / UITextView /any UIView for that matter , I only know of a way to figure out the height properly : [myView sizeToFit]; And then get it's frame.

Hope this helps.

Regards,

George

like image 39
George Avatar answered Nov 10 '22 17:11

George


You'll be able to have more control over the text layout with the CoreText framework. Checkout the documentation:

There are also some nice open source things that already do a lot of the hard work for you, like: https://github.com/Cocoanetics/DTCoreText

like image 127
Jasarien Avatar answered Nov 10 '22 18:11

Jasarien