【Unity】フリックカレンダーの修正と改良
前回記事の続きとなります。
フリックでスクロールするカレンダーができたのですが、
タッチパネル上から指が離れるとドロップのメソッドが呼び出せない。
これは操作系としては欠点なんで、修正案を考えてみました。
あと、Drop時にタッチパネルを、強制的に指定座標まで移動させていますが、
瞬間移動するので、スクロールしているように見えません。
この辺りも改良する必要があるので、同時に考えてみたいと思います。
まず、おさらいなんですが…
オブジェクトをドラッグする際、
必ず指やマウスがオブジェクト上にあると思います。
しかし、今回のドラッグは縦移動を制限しているので、
上下に指を動かすとオブジェクトから離れた状態になります。
EventtriggerのDropは、あくまで、
オブジェクト上の指が、Dropした時だけ呼び出されるようになっています。
オブジェクト上に指がない状態では、
Dropしても呼び出されない仕様なんですね~ (T-T) グスッ
なので、タッチパネルから外れた所でDropすると
カレンダーが変な位置で停止します。
と言う事で、
オブジェクト上に指がある事を認識させる必要があります。
まず、ドラッグの範囲を限定しようかと考えたのですが、
Androidの場合、画面サイズによってScreenWorldのポイントが変化します。
座標からドラッグできる範囲を指定するのは、
かなり面倒な計算が必要に…