Chris
Chris

Reputation: 5627

sizeWithFont: constrainedToSize: with UITextView is (sometimes) not creating correct height - iPhone

I am using the following code to determine the height needed for a UITextView that is being added to a UITableViewCell, and also to determine the height for each UITableViewCell.

This works 90% of the time, but some incoming data (always the same incoming data) comes up short. If I allow scrolling within the UITextView, I can see that all the text is in the UITextView - but the UITextView does not have enough height to display all the text.

There does not appear to be anything wrong with the text that is being read, no special or hidden characters, etc.

UIFont *font = [UIFont fontWithName:@"ArialMT" size:14];
CGSize withinSize = CGSizeMake(230, 10000); 
CGSize size = [currentTimelineText sizeWithFont:font constrainedToSize:withinSize lineBreakMode:UILineBreakModeWordWrap];

When I then create a frame with frame = CGRectMake(boundsX, yPosition, 230, size.height); and assign that frame to the UITextView , it (sometimes) comes up short.

Upvotes: 3

Views: 3229

Answers (2)

Farhad Malekpour
Farhad Malekpour

Reputation: 1404

If table is in group mode, watch out for paddings. At the time of cellForRowAtIndexPath or heightForRowAtIndexPath, cell has screen width, not with padding of group style table.

Upvotes: 2

xhan
xhan

Reputation: 6297

don't use UITextView. seems TextView have margin&padding configured by apple.
using UILabel instead. (don't forgot to set EnableMultiLine to YES).

Upvotes: 6

Related Questions