2016-08-23 55 views
2

我想在Unity3D 5 UI中實現滾動視圖,從web上下載水平圖像,他們有不同的隨機長寬比,但我希望他們是恆定高度。和寬度根據它們的縱橫比是這樣的:Unity3D UI中具有圖像高度不變的水平滾動視圖 - 如何?

enter image description here

我試圖用水平佈局組,但圖像得到的太少,所以它可以全部裝入組,當我想他們是不變身高和伸展父母的寬度。所以,像父母的小孩是主要的,它會影響孩子,但我希望孩子影響父母的總寬度(當添加新的孩子圖像時擴大它)。

任何想法如何實現這一目標?謝謝。

+0

你檢查了這個:http://stackoverflow.com/a/38479097/4366237 –

+0

嗯,謝謝,現在檢查... – Roman

回答

0

您需要在啓用水平滾動和禁用垂直滾動的情況下使用ScrollView。設置您的層次結構如下圖所示:

enter image description here

在遊戲對象命名Content附上Horizontal Layout GroupContent Size Fitter以下設置:

enter image description here

然後在所有的圖像附加Layout Element組件並在運行期間使用圖像和高度的寬高比來計算寬度,並將其與Content gameobject相關聯,並將此寬度指定爲Preferred Width propert Layout Element組件的Y:在下面的圖片300是圖像的計算寬度:

enter image description here

因此任何圖像,你作爲孩子添加到Content遊戲對象將增加他們的父母的寬度,你也將成爲能夠水平滾動查看所有圖像。

p.s.我寫這個答案匆忙。如果不讓我知道,希望它對您有意義,我會改進我的答案。