sizeWithFont: constrainedToSize: with UITextView i

2019-07-03 08:09发布

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.

2条回答
Rolldiameter
2楼-- · 2019-07-03 08:44

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

查看更多
beautiful°
3楼-- · 2019-07-03 08:49

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.

查看更多
登录 后发表回答