Всякий раз, когда в тексте присутствует &, получение высоты кажется выключенным все время. Обе функции возвращают меньше, чем фактическая высота:sizeWithFont - странное поведение при наличии символа &
CGSize labelSize = [nameLabel.text sizeWithFont:nameLabel.font constrainedToSize: CGSizeMake(actualWidth, MAXFLOAT) lineBreakMode:UILineBreakModeWordWrap];
CGRect textSize = CGRectMake(0.0, 0.0, 320.0, FLT_MAX);
nameLabel.frame = [nameLabel textRectForBounds:textSize limitedToNumberOfLines:0];
Ни один из них не будет возвращать правильную высоту, хотя второй метод, использующий textRectForBounds возвращает гораздо ближе фактическую высоту. Первый вернет 240, а позже вернет 700. Фактически это 750.
Это испортит мой UITableView, показывая тексты, которые перекрываются друг с другом.
Интересно, что вернул бы ту же высоту, пока текст не содержит символов &.
Может кто-нибудь просветить меня, пожалуйста, что касается меня жизни, я не понимаю, что здесь происходит, и знаю, как правильно это исправить.
Большое спасибо.
для вашего первого примера, что означает ограничение max и min? – Daniel