Размер окна просмотра Unity Scrollrect не изменяется - PullRequest
1 голос
/ 26 мая 2019

У меня есть объект прокрутки на холсте пользовательского интерфейса, у которого есть дочерний объект области просмотра, а у объекта области просмотра есть дочерний объект содержимого, в котором хранятся все элементы, подлежащие прокрутке.enter image description here

Я выбрал область просмотра для справки.Я хочу изменить размер прямоугольника области просмотра относительно LevelScroller (см. Иерархию), чтобы вокруг поля прокрутки было поле, чтобы элементы прокрутки не касались края серого прямоугольника LevelScroller.Но прямоугольник области просмотра не изменяется.Прямо сейчас результат таков:

enter image description here

Посмотрите, как серая панель обрезает верхнюю кнопку (1S-левитация).Я хочу, чтобы между точкой, где она была обрезана, и серым полем было поле.

Я пытался добавить горизонтальную группу макетов в LevelScroller, чтобы принудительно добавить поле, но это не сработало.Почему размер окна просмотра не может быть изменен?

Любая помощь приветствуется

1 Ответ

0 голосов
/ 26 мая 2019

Я считаю, что область просмотра не может быть изменена, потому что она должна управлять поведением прокрутки во время взаимодействия с пользователем.Например, у вас есть только одна ячейка в контейнере контента, и пользователь перетаскивает ее вниз, после того, как она будет освобождена, она должна переместиться обратно в верхнюю часть вашего окна просмотра, и если вы добавите поле, она не сможетof полностью переместиться наверх.

Но, надеюсь, вы можете сделать следующий трюк, чтобы получить запас:

Создайте пустой игровой объект с именем Scroller и установите его в качестве отца вашего LevelScroller.Затем установите LevelScroller RectTransform для растяжения в обоих направлениях и установите желаемое поле в полях RectTransform Top, Bottom, Right и Left.У вас должно быть что-то вроде этого:

LevelScroller как ребенок с 10 пикселями верхнего и нижнего поля

Затем создайте еще один пустой объект-потомок вашего родительского Scroller и поместитеэто позади LevelScroller.Давайте назовем это BgImage.Теперь установите RectTransform BgImage, чтобы растянуть в обоих направлениях и добавить изображение к нему.Да дааа, теперь у тебя должен быть фон с полями в окне просмотра.

BgImage работает как фон LevelScroller

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...