У меня есть файл XIB
, содержащий представление с UITextView
в качестве подпредставления. Этот textView имеет высоту 30 пикселей, потому что его размер должен изменяться в соответствии с его содержимым.
Итак, я задаю текст программно, вызываю -sizeToFit
и перенастраиваю фрейм textView и его супервью:
[_textView setText:[contents objectForKey:@"body"]];
[_textView sizeToFit];
CGSize txtSize = _textView.contentSize;
txtSize.height = _textView.frame.size.height;
_textView.contentSite = txtSize;
CGRect superFrame = _textView.superView.frame;
superFrame += _textView.contentSize.height;
_textView.superView.frame = superFrame;
SuperView действительно правильно изменяет размер. Кроме того, при регистрации фрейма текстовых представлений и размера содержимого на консоли все выглядит нормально (около 1200 пикселей в высоту).
Но textView имеет высоту всего 30 пикселей на экране. Также звонок -setNeedsLayout
не помог.
В чем тут может быть дело?