NGUI の ScrollView で気持ちのいいスクロールを実装する
気持ちが良いスクロールとは?
- 今回は「ちょっとスワイプするだけで次の要素にスッと切り替わる」ものを実装する。
バージョン情報
- Unity 4.6.1f
- NGUI 3.7.6
ヒエラルキー
UI Root ScrollView Grid
ScrollView の作成
- メニューの [NGUI] > [Create] > [Scroll View] で作成
Grid の作成
- メニューの [NGUI] > [Create] > [Grid] で作成
- UICenterOnChild をアタッチ
オプション設定
- UIGrid の Sorting を None 以外にする
- わからなければ Custom にする
- UICenterOnChild の NextPageThreshold を 1 にする
動作確認
- Grid 配下に任意の UIDragScrollView とコライダーがアタッチされたオブジェクトを追加して動作を確認する。
解説
- UICenterOnChild.NextPageThreshold が 0 より大きく、UIGrid の Sorting が None 以外である時、スワイプした距離が NextPageThreshold より大きければ UICenterOnChild により次あるいは前の要素に切り替わる。
注意点
- ScrollView をループさせるスクリプトの UIWrapContent が有効であると、この処理は正常に行われなかった。