0
我目前正在研究一個小型項目來學習Unity,並且我被困在做無限滾動的ScrollRect。根據內容面板的移動方向,我得到了從面具中產生/回收對象並添加正確的動作和註冊,並將新的設置爲內容面板的最後一個或第一個兄弟的想法,但是在那裏是一個小問題。當我在該內容面板上有超過100個對象時,我不能期望讓內容面板很長,這樣我就可以長時間滾動它。我需要的是滾動一個小的(比面具更大的面板)無限量的面板。我該怎麼做?如何使ScrollRect內容無限滾動?
我目前正在玩normalizedPosition,並滾動回面板頂部(或底部,根據我朝哪個方向),這是我的OnDrag方法的樣子;
public void OnDrag(PointerEventData eventData)
{
if (transform.GetComponent<ScrollRect>().verticalNormalizedPosition < 0.15f)
{
transform.GetComponent<ScrollRect>().verticalNormalizedPosition = 0.88f;
}
if (transform.GetComponent<ScrollRect>().verticalNormalizedPosition > 0.90f)
{
transform.GetComponent<ScrollRect>().verticalNormalizedPosition = 0.17f;
}
}
我班正在實施IDragHandler,順便說一句,如果需要有關的任何信息。
如果你真的很快滾動並從垂直位置0.89到0.99怎麼辦?你不應該把它困在0.17,你應該增加或減少一個值。 – Draco18s
我不滾動,而只是讓它拖動工作。我已經實現了IScrollHandler來「吞噬」那個動作。在拖動時,我不明白「增加」的意思,但是我會嘗試在0.99時將垂直標準化位置增加0.02,並希望它能夠回滾。 –