Peter Pajchl
Peter Pajchl

Reputation: 2709

How make UILabel with autoresizingMask in a custom cell?

I have a custom uitableviewcell with several labels and I would like for some of them to autoresize their frame (width) based on the content (text). I am not sure how to accomplish that. I tried to set fixed frame of the label and after apply autoresizingMask, but that doesn't do the trick. Any *pointer to a sample?

Upvotes: 3

Views: 2833

Answers (3)

Ideveloper
Ideveloper

Reputation: 1463

Use the following method:

CGSize *size = [label.text sizeWithFont:fontOfLabelText];
float widthOfLabel = size.width;

size.width will return the actual width that the text in the label will occupy on the screen. Set the label width equal to width of text.

Upvotes: 2

tonklon
tonklon

Reputation: 6767

If you want to adjust the frame of a label to fit the labels text, just call

[label sizeToFit];

This will fit in both dimensions.

Upvotes: 3

Enrico Susatyo
Enrico Susatyo

Reputation: 19790

If you just want to make so that the label fits in multiple lines, you have to say:

cell.textLabel.numberOfLines = 0;

However I'm not sure if this is the one that you want... Usually if the content is text than that'll be what you want.

Upvotes: 0

Related Questions