heightForRowAtIndexPath для более длинных строк NSStrings
у меня естьUITableView
(Сгруппированы!) И нужно рассчитать высоту двух стилей ячеек:UITableViewCellStyleDefault
а такжеUITableViewCellStyleValue2
.
This is how I do it for UITableViewCellStyleDefault
:
CGSize textSize = {300.f, 200000.0f};
CGSize size = [myTextString1 sizeWithFont:[UIFont systemFontOfSize:14.0f] constrainedToSize:textSize lineBreakMode:UILineBreakModeWordWrap];
size.height += 30.0f;
result = MAX(size.height, 44.0f);
And for UITableViewCellStyleValue2
:
CGSize textSize = {207.f, 200000.0f};
CGSize size = [myTextString2 sizeWithFont:[UIFont systemFontOfSize:14.0f] constrainedToSize:textSize lineBreakMode:UILineBreakModeWordWrap];
size.height += 30.0f;
result = MAX(size.height, 44.0f);
Моя проблема в том, что они возвращают неправильные высоты, и я думаю, что этоtextSize
где я использую неправильные номера. При длинных текстах нижняя часть обрезается (обычно это просто строка с несколькими словами), и для обоих CellStyles у них странный интервал над и под текстом в ячейке.
ЗаUITableViewCellStyleValue2
Я получил размер ширины (207.0f
) сделать красный цвет text.backgroundColor, а затем просто вычислить размер поля.300.0f
ширина дляUITableViewCellStyleDefault
насколько велика клетка сUITableViewStyleGrouped
.
Кто-нибудь знает, какие значения мне нужно использовать, чтобы правильно рассчитать размерNSString
и тем самым получить соответствующую высоту для моих клеток?
Thanks