Я уже сделал несколько поисков в Stack Overflow и Google, но не смог найти решение своей проблемы.
У меня есть подробное представление для продукта, который включает UIScrollView и несколько подпредставлений (UIImageView, UILabel, UITextView). Пример можно найти здесь.
Сначала я хочу автоматически изменить размер UITextView (не самого текста!) До соответствующей высоты. Затем я хочу автоматически изменить размер всего UIScrollView, чтобы он соответствовал высоте моего UITextView и элементов над ним. Я пробовал следующий код:
myUITextView.frame = CGRectMake(2.0, 98.0, 316.0, self.view.bounds.size.height);
[scrollView setContentOffset:CGPointMake(0.0, 0.0) animated:NO];
scrollView.contentSize = CGSizeMake(320.0, 98.0 + [myUITextView frame].size.height);
[self.view addSubview:scrollView];
98,0 + [myUITextView frame].size.height), потому что я подумал: после получения высоты myUITextView добавьте к ней высоту других подпредставлений (98,0).
К сожалению, это не очень хорошо работает. В зависимости от содержимого UIScrollView он может быть слишком коротким или слишком длинным. Я сделал некоторую регистрацию, в результате чего высота UITextView всегда одинакова:
2010-01-27 14:15:45.096 myApp[1362:207] [myUITextView frame].size.height: 367.000000
Спасибо!