Чем отличается заполнение каждого UITableViewCell (с использованием динамической высоты) - PullRequest
0 голосов
/ 23 января 2012

Я использую динамическую высоту для моего UITableViewCell, чтобы хорошо вписаться во все содержимое.Я использую этот код в методе heightForRowAtIndexPath:

NSString *text = [[gigItems objectAtIndex:0] objectForKey: @"Notes"];
CGSize textSize = [text sizeWithFont:[UIFont fontWithName:@"Helvetica" size: 14.0] constrainedToSize:CGSizeMake(280 - PADDING_NOTES * 3, 1000.0f)];

return textSize.height + PADDING_NOTES * 3;

И в cellForRowAtIndexPath я устанавливаю текст с такими же настройками:

[cell.textLabel setText:[[gigItems objectAtIndex: gigItemIndex] objectForKey: @"Notes"]];
[cell.textLabel setLineBreakMode:UILineBreakModeWordWrap];
[cell.textLabel setNumberOfLines:0];
[cell.textLabel setFont:[UIFont fontWithName:@"Helvetica" size: 14.0]];

На первый взгляд это кажетсяработает нормально, но когда я приглядываюсь, текст иногда очень близко к краю, или слишком много отступов.Я убедился, что ширина (280, в constrainedToSize: CGSizeMake, в методе heightForRowAtIndexPath), шрифт, размер шрифта и другие одинаковы как в методе heightForRowAtIndexPath, так и в методе cellForRowAtIndexPath.

Что можетвызвать такое поведение?

Вот скриншот с пояснениями.Кажется, это выглядит правильно, если заметки в 2 строки.Ну, иногда это 1, в другой раз 3, 4 или 20 ..

padding problem described in a screenshot

...