Я реализовал в своем iOS-приложении некоторую TdBadgedCell (от https://github.com/tmdvs/TDBadgedCell) в UITabView. Но когда я хочу динамически управлять высотой ячеек, используя что-то вроде этого примера:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
{
NSString *text = [items objectAtIndex:[indexPath row]];
CGSize constraint = CGSizeMake(CELL_CONTENT_WIDTH - (CELL_CONTENT_MARGIN * 2), 20000.0f);
CGSize size = [text sizeWithFont:[UIFont systemFontOfSize:FONT_SIZE] constrainedToSize:constraint lineBreakMode:UILineBreakModeWordWrap];
CGFloat height = MAX(size.height, 44.0f);
return height + (CELL_CONTENT_MARGIN * 2);
}
ширина ячейки - это полная ширина ячейки (вычисленная переменная «ограничение» в приведенном ниже примере), а не реальная ширина надписи, напечатанной на экране с учетом ширины значка. Таким образом, часть текста вконец UILabel не появляется в ячейке, когда текст слишком длинный.
Как мне решить эту проблему, пожалуйста?