Я прочитал много документации, но все еще не совсем понимаю, как это работает UIScrollView .
У меня есть пример, где я использую UINavigationViewController со строкой состояния (маленькая верхняя панель с иконками wifi, батареи и т. д.) и панелью навигации (с кнопкой «назад»).
Какпервое подпредставление основного представления UINavigatioViewController У меня есть UIScrollView.Внутри него я создал несколько подпредставлений, в которых размер его содержимого составляет 500 точек .
. В методе " viewDidLoad " я установил представление прокрутки "contentSize"равно 500. Но он не полностью прокручивается вниз, чтобы показать последнее подпредставление.
Я прочитал, что должен добавить несколько точек к" contentInset"из-забары".Я действительно не знаю почему.Разве представление прокрутки внутри основного представления не является правильно оформленным?Почему нужно принимать во внимание "бары"?
В любом случае, я прочитал, что это должно быть как 64 балла (44 навигационная панель + 20 статусная строка).Но это не работает.
«магическое» число (по крайней мере для меня) составляет 84 балла .Я должен добавить это количество к размеру контента (584) или использовать его как:
self.scrollView.contentInset = UIEdgeInsetsMake (0.0,0.0,84.0,0.0);// Внизу !!
Я действительно смущен этим.Кто-нибудь может помочь понять?
Спасибо.
self.scrollView.contentInset=UIEdgeInsetsMake(0.0,0.0,84.0,0.0);
ОБНОВЛЕНИЕ
Я видел это, потому что сделалРазмер ScrollView больше в Интерфейсном Разработчике, чтобы добавить новые элементы сверх обычного небольшого видимого размера, у него был размер "рамки" около 500 точек.
Я установил размер кадра в 416 (просто чтобы уместить и закрытьвсе видимое пространство) и теперь с размером содержимого 500 точек (без каких-либо дополнительных значений вставки) он прекрасно прокручивается.
Но я все еще не понимаю предыдущее поведение ...