我在UI画布上有一个scrollrect对象,该对象具有一个视口对象子对象,而视口对象具有一个内容对象子对象,该子对象存储了所有要滚动的项目。
我已选择视口作为参考。我想相对于LevelScroller调整视口矩形的大小(请参见层次结构),以便在滚动视图周围留出一定的空白,以使滚动项不会触及灰色LevelScroller矩形的边缘。但是视口矩形不能调整大小。现在的结果是这样的:
查看如何用灰色面板切掉顶部的按钮(1S-Levitation)。我希望在切掉的点和灰色框之间有一个边距。
我尝试将水平布局组添加到LevelScroller以强制添加页边距,但这没有用。为什么视口无法调整大小?
感谢您的帮助
答案 0 :(得分:0)
我认为,视口不是可调整大小的,因为它可以管理用户交互过程中滚动的行为。举例来说,您的内容容器中只有一个单元格,用户将其向下拖动,一旦释放,它应该移回视口顶部,如果您在其中放置边距,将无法执行此操作完全回到顶部。
但希望您可以通过以下技巧来提高利润:
创建一个名为Scroller的空游戏对象,并将其设置为LevelScroller的父对象。然后,将LevelScroller RectTransform设置为在两个方向上拉伸,然后在RectTransform的Top,Bottom,Right和Left字段上设置所需的边距。你应该有这样的东西:
LevelScroller as a child with 10 pixels of top and bottom margin
然后创建父Scroller的另一个空对象子级,并将其放在LevelScroller的后面。让我们称之为BgImage。现在,将BgImage的RectTransform设置为在两个方向上拉伸并向其中添加图像。 Ta daaa,您现在应该在视口中有背景和边距了。