NGUI ScrollView總結


1頂級父類加boxCollider和UIDragScrollView腳本保證在item拖走后也能通過拖拽剩余區域的方式操作。

2下一級添加UIPanel在Clipping設定區域,注意如果設定softClip就不能保證item填滿,會從alpha值為1的地方開始填充。
3添加UIScrollView腳本和SpringPanel腳本(如果位置不是zero要在SpringPanel中設置)。
4再下級如要保證item位置總是合適則添加UICenterOnChild腳本(如果添加則不能保證充滿),如要自動排列item則添加UIGrid腳本,注意此級的位置,他的位置會決定自動排列的item的起始位置。
5item級如果有boxCollider則要添加UIDragScrollView腳本,保證拖動item時也能響應。
6item級如果有boxCollider可以添加UICenterOnClick腳本通過點擊使自己居中。
 
 

在NGUI中,ScrollView是一個非常棒的界面,不過剛開始使用的時候一直一些事項沒有搞懂,現在算是明白了,可以輕松上手了,下面把一些注意的問題寫出來分享一下。

 

一個是回彈問題,開始做的時候,一直沒有明白例子中那個回彈的效果是如何實現,如圖這樣的效果

 

確實這個效果在IOS上非常流行,用戶體驗也很棒,它的原理也是利用一個UIDragPanelContents代碼控件完成的。

 

在window的UIPanel里面有這么一個物體Outline,在例子界面上的作用是一個ScrollView背景,之所以可以回彈全靠這個,點擊這個物體,給它添加一個Collier和UIDragPanelContents,將Draggable Panel屬性設置為Clipped View即可看到效果了,記住這個背景最好放大些,這樣手指只要在這個背景的區域內都可以滑動ScrollView了。

如果在自己的界面中不想看到這層背景,但是沒有這層又不行,最好的方法就是把這層的Alpha值設為0,這樣就變成透明的了,也就看不到了

 

當然,如果你的里面放置的僅僅是文本圖片之類的,基本就結束了,但是如果是響應的控件,比如按鈕,可以會有無法響應的問題,就是可以滑動,但是按鈕無法被點擊,造成的原因其實是Collider的前后關系,這層觸摸背景的Collider比按鈕的Collider要靠前,造成觸發器先接受到了,所以按鈕就不響應了。

解決辦法就是把觸摸背景這層的Z軸放后一些,放在按鈕的后面,這樣問題就可以解決了。

 

二是ScrollView里面的Item沒有被裝滿卻可以被拉動,會造成Item的位置改變而無法回復原位,如果不想被拉動,只有里面的Item超過了顯示界面才可以被拉動,只需要勾上ScrollViewPanel上的Disable Drag If Fits即可。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM