Я испытываю что-то, рассмотрел ошибку в моей ситуации. Вероятно, это не ошибка, а функция ;)
Вот мой случай:
Я загружаю UIScrollView своим содержанием. Часть моего содержания загружается asynchrone после того, как представление будет уже загружено. Это работает отлично и без проблемы. Некоторые из этих средств управления однако являются средствами управления UITextView. После того как я установил содержание (текстовое свойство) этих средств управления после viewDidLoad, который мой UIScrollView прокручивает вниз к последнему UITextView, который был установлен. Я хочу предотвратить это, и хотеть, чтобы UIScrollView поддержал, это - прокрученное положение вершины.
Таким образом: Если я установил текстовое свойство в viewDidLoad методе, никакая прокрутка не происходит. Если я установил текстовое свойство на UITextView после viewDidLoad метода (потому что я загружаю асинхронные данные), UIScrollView прокрутит в последний UITextView, который был установлен. Я хочу предотвратить эту прокрутку.
Как я достигаю этого? У меня есть чувство, что это - просто свойство, которое установлено неправильно, но я, может казаться, не нахожу его.
Заранее спасибо.
Править:
Я попытался установить "scrollEnabled" свойство на НЕ прежде, чем установить значения и на ДА после, но это не имело никакого эффекта. ScrollView все еще прокрутит, когда текстовое свойство UITextView будет установлено.
Я исправил проблема с обходным решением:
Я установил размер содержимого прокрутки на что-то маленькое, например 320 x 300 или любую другую высоту рамки прокрутки, затем выполнил свою работу, затем вернул размер содержимого к нормальному.
Это предотвращает прокрутку во время загрузки данных и включает ее, как только загрузка завершается.
Это не изменит проблему прокрутки, но, возможно, сделает ее «скрытой» для пользователя:
yourTextView.text = @"Eat more bananas!";
yourScrollView.contentOffset = CGPointMake(0.0, 0.0);
Некоторые фрагменты вашего кода могут помочь решить проблему более конкретно.
РЕДАКТИРОВАТЬ: Или попробуйте добавить UITextViews в UIView, а затем добавьте UIView в UIScrollView. Убедитесь, что contentSize UIScrollView совпадает с размером UIView.