|
0 / 0 / 0
Регистрация: 08.09.2013
Сообщений: 27
|
||||||
ScrollView не скроллится (хотя contentSize > frame)08.01.2014, 18:48. Показов 5965. Ответов 17
Метки нет (Все метки)
Доброго всем дня!
Схожу понемножку с ума: Есть scrollView. Аутлет проведен, "Scrolling enabled" включен, "User Interaction Enabled" включен, все subview даже упаковал в отдельный View и засунул его в скролл в качестве единственного элемента. Во ViewDidLoad уже явно написал:
А он не скроллится вообще, хоть убейся(( Перечитал весь StackOverflow - никаких дополнительных советов нет.. Буду очень благодарен за какие-то идеи..
0
|
||||||
| 08.01.2014, 18:48 | |
|
Ответы с готовыми решениями:
17
Не получается задать contentSize
Как программно добавить Frame в другой существующий на форме frame? |
|
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
|
|
| 08.01.2014, 19:53 | |
|
Подозреваю, что используется auto layout. Если да, то надо констрейном указать расстояние от самого нижнего окна в scroll view (в вашем случае вот этого "даже упаковал в отдельный View") до нижней части самого scroll view. При использовании auto layout contentSize рассчитывается из констрейнов.
1
|
|
|
0 / 0 / 0
Регистрация: 08.09.2013
Сообщений: 27
|
|
| 08.01.2014, 20:07 [ТС] | |
|
Спасибо большое! Буду в ближайшее время читать детальнее про UIScrollView, чтобы понять его кухню..
Добавил такой констрейнт, потом сделал "Add missing constraints", чтобы автоматически добавились недостающие, и - ура, скролл завертелся)) Правда, до конца не докручивается - заметил, что мой contentsize почему-то сбрасывается в исходное значение, как только я начинаю взаимодействовать со скроллом.. Пока тема активна - может у вас есть мнение и по поводу этой новой проблемы?
0
|
|
|
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
|
|
| 08.01.2014, 21:03 | |
|
self.scrollView.scrollEnabled = YES;
self.scrollView.contentSize = CGSizeMake(320, 1050); не из за этого случайно?
0
|
|
|
0 / 0 / 0
Регистрация: 08.09.2013
Сообщений: 27
|
||
| 08.01.2014, 21:10 [ТС] | ||
|
Сейчас разместил на своем scrollView->View-> только один элемент - кнопку. Высота скролла (скролл по вертикали выполняется) == 422; Высота View внутри него == 800; Кнопка внутри View находится по y-смещению == 700. И в коде я ставлю contentSize == 1050. Что же из этого списка может быть некорректным?
0
|
||
|
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
|
|
| 08.01.2014, 21:25 | |
|
Все констрейны, которые нужны:
Leading, trailing, top space и bottom space от View, которая лежит в скролл-вью, до самого скролл вью Остальное убить и не пользовать Add missing constraints пока не въедете в них. Я въезжал пару месяцев )))) Но в 5-м икскоде они значительно удобнее.
0
|
|
|
0 / 0 / 0
Регистрация: 08.09.2013
Сообщений: 27
|
||
| 08.01.2014, 21:42 [ТС] | ||
|
Нагуглил статью, вроде как, на схожую тему: http://www.suchanowski.com/201... crollview/ Сейчас буду читать. Что вы скажете по поводу этой ошибки? Она исчезает при указании, с использованием констрейтсов ширины-высоты скроллу, или view, которая лежит внутри него, но тогда проблема со скроллом остается
0
|
||
|
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
|
|
| 08.01.2014, 21:49 | |
|
Скажу, что скорее всего перед добавлением новых констрейны надо было убить старые.
А на самом деле, это уже отладка. Путь я показал, дальше самостоятельно
1
|
|
|
0 / 0 / 0
Регистрация: 08.09.2013
Сообщений: 27
|
|
| 08.01.2014, 22:01 [ТС] | |
|
Да, старые убил.
Спасибо большое за помощь! Как только разберусь - напишу свою последовательность действий.
0
|
|
|
5 / 5 / 0
Регистрация: 14.01.2014
Сообщений: 7
|
|
| 14.01.2014, 23:27 | |
|
Сталкивался с такой проблемой, указывал контет во viewDidLoad, потом где-то наткнулся на статью, где говорилось о том, что лучше этот делать после того как загрузится view, перенес метод setContentSize во viewWillAppear и все заработало на ура.
0
|
|
|
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
|
|
| 15.01.2014, 01:13 | |
|
ага. Пока пользователь айфон в лэндскейп не перевернул. Ну, а если совсем точно - пока родительской вьюхе не понадобилось layout обновить. Неправильная статья. Или неправильно понята.
1
|
|
|
5 / 5 / 0
Регистрация: 14.01.2014
Сообщений: 7
|
|
| 15.01.2014, 13:22 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 08.09.2013
Сообщений: 27
|
||||||
| 15.01.2014, 19:35 [ТС] | ||||||
|
Накидали мне сразу после постинга этой темы других задач, и только сегодня вернулся опять к своей проблеме.
За пару дней пришла в голову интересная идея, которую я попробовал реализовать - и, вуаля, - все стало красиво, просто и без каких-то проблем. Удивляет, правда, то, что сделал все иначе, чем рекомендовали мне добрые люди в этой теме, и чем было написано на разных стековерфлов'ах. А сделал я следующее: Создал xib-файл, в нем View "свободной" формы, который растянул на высоту контента, который я планировал вставить в свой скролл. Насовал в этот View кучу компонентов, и потом просто загрузил в свой скролл содержимое этого xib'а, как subView:
Вижу в этом решении один большой плюс - мне очень удобно в отдельном xib'e рисовать содержимое скролла. Но неужели все так просто?)) Подскажите, может в моем решении есть какой-то потенциальный скрытый косяк? Добавлено через 1 час 27 минут Уже понял абсурдность своего решения)) Не прокатила внезапная "гениальная идея"
0
|
||||||
|
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
|
|
| 15.01.2014, 21:14 | |
|
А в чем беда-то? Не сказать, чтобы прямо безупречный вариант, но по крайней мере вполне работоспособный. Если в layoutSubviews добавить "self.scrollView.contentSize = mainView.frame.size;", еще и безбажный.
Интересно же
0
|
|
|
0 / 0 / 0
Регистрация: 08.09.2013
Сообщений: 27
|
||
| 15.01.2014, 21:52 [ТС] | ||
|
Дело в том, что у меня в mainView лежит штук 15 разных полей ввода, из которых мне надо забирать инфу. Чтобы получить к ним доступ, я каждому назначил Tag = 1,2,3..., в контроллере, который содержит скролл, объявил 15 UITextField, и после приведенного выше мною кода я прохожусь по всем subView этого mainView, проверяю тег, и присваиваю нужному UITextField нужный subView. После этого уже работаю с ними без проблем. Я не очень давно занимаюсь iOS разработкой, может я выбрал слишком сложный подход, и поэтому он меня смутил? Т.е. в принципе, все работает, но как-то показалось мне похожим на извращение))
0
|
||
|
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
|
|
| 15.01.2014, 22:01 | |
|
0
|
|
|
686 / 613 / 43
Регистрация: 13.01.2011
Сообщений: 1,722
|
||||||||
| 16.01.2014, 12:21 | ||||||||
1
|
||||||||
|
0 / 0 / 0
Регистрация: 08.09.2013
Сообщений: 27
|
|
| 16.01.2014, 14:37 [ТС] | |
|
0
|
|
| 16.01.2014, 14:37 | |
|
Помогаю со студенческими работами здесь
18
In a frame because it set 'X-Frame-Options' to 'SAMEORIGIN
Не скроллится страница Frame, Chrome, Blocked a frame with origin "null" Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
|
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
|
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут.
В век Веб все очень привыкли к дизайну Single-Page-Application .
Быстренько разберем подход "на фреймах".
Мы делаем одну. . .
|
Фото: Daniel Greenwood
kumehtar 13.11.2025
|