Unity scrollview继承比例并保持相对于父级的位置

时间:2019-05-06 19:37:47

标签: unity3d

我正在尝试向游戏对象中添加一些按钮,该对象是滚动视图的子级。这个孩子是一个非常宽的图像,大约是普通屏幕的4倍,这就是为什么我让它控制高度的原因,所以它始终是从上到下,并且仅在允许滚动的情况下水平出现。

enter image description here 在这里您可以看到我的设置。

1。是宽图像

2。是曾经是图像一部分的横幅,但是现在我希望它成为一个单独的gameObject。

我不知道如何使横幅广告(2)继承“全图”的行为(1),现在当我选择自由方面并调整游戏视图的大小时,“全图”可以很好地缩放,因此它始终适合从顶部到底部。屏幕越窄,则地图的更多部分将超出右侧,反之亦然。

但是问题是横幅(2)具有rect变换,该变换使用相对于缩放比例的父对象的x,y坐标设置。因此,当我围绕视图调整大小时,横幅会偏离其预期位置,并且不会随其缩放。我尝试了许多不同的组件,但是没有运气。其中,比例约束,画布缩放器,位置约束

enter image description here

您可以在此gif文件中看到,随着岛屿的变小,横幅并没有按比例缩小,它也保持在水平位置。

关于我如何使孩子们在地图上的行为有任何建议吗?

2 个答案:

答案 0 :(得分:0)

以前删除的,误解了这个问题。

建议的解决方案:

您从用户界面中删除了地图部件并将其创建为一个对象:将地图图像作为纹理附加到(即)飞机上(请参见视频here)。您将“无限岛”添加为另一个纹理,并将其放置在岛图像上。 之后,您可以控制相机放大/缩小岛屿,而不用担心缩放或移动UI。

答案 1 :(得分:0)

enter image description here我认为您需要将图像锚定到小岛迷你图像的中心,您可以从场景层次结构中拖动锚定小控件。

如果您将其视为free aspect,则会出现问题,并且难以处理,但是如果您选择分辨率,则一切都会很顺利。

这是您想要的吗?

更改分辨率

enter image description here