1

私は今、他のすべてのアプリが持っているように、タッチデバイスでスムーズなスクロールを取得する方法を理解しようとしています..当分の間、これを実装しました:

Multitouch.inputMode = MultitouchInputMode.GESTURE;

stage.addEventListener (TransformGestureEvent.GESTURE_SWIPE, fl_SwipeHandler);

function fl_SwipeHandler(event:TransformGestureEvent):void
{
    switch(event.offsetX)
    {
        // swiped right
        case 1:
        {
            // Start your custom code
            // This example code moves the selected object 20 pixels to the right.

            // End your custom code
            break;
        }
        // swiped left
        case -1:
        {
            // Start your custom code
            // This example code moves the selected object 20 pixels to the left.

            // End your custom code
            break;
        }
    }

    switch(event.offsetY)
    {
        // swiped down
        case 1:
        {
            // Start your custom code
            // This example code moves the selected object 20 pixels down.
            if (PActive == true) {
                dgPlace.verticalScrollPosition = dgPlace.verticalScrollPosition - 60;
            }
            if (SActive == true) {
                dgSubject.verticalScrollPosition = dgSubject.verticalScrollPosition - 60;
            }
            if (OActive == true) {
                dgObject.verticalScrollPosition = dgObject.verticalScrollPosition - 60;
            }
            if (FActive == true) {
                dgFeeling.verticalScrollPosition = dgFeeling.verticalScrollPosition - 60;
            }
            if (AActive == true) {
                dgAction.verticalScrollPosition = dgAction.verticalScrollPosition - 60;
            }
            if (NActive == true) {
                dg.verticalScrollPosition = dg.verticalScrollPosition - 60;
            }
            // End your custom code
            break;
        }
        // swiped up
        case -1:
        {
            // Start your custom code
            // This example code moves the selected object 20 pixels up.
            if (PActive == true) {
                dgPlace.verticalScrollPosition = dgPlace.verticalScrollPosition + 60;
            }
            if (SActive == true) {
                dgSubject.verticalScrollPosition = dgSubject.verticalScrollPosition + 60;
            }
            if (OActive == true) {
                dgObject.verticalScrollPosition = dgObject.verticalScrollPosition + 60;
            }
            if (FActive == true) {
                dgFeeling.verticalScrollPosition = dgFeeling.verticalScrollPosition + 60;
            }
            if (AActive == true) {
                dgAction.verticalScrollPosition = dgAction.verticalScrollPosition + 60;
            }
            if (NActive == true) {
                dg.verticalScrollPosition = dg.verticalScrollPosition + 60;
            }
            // End your custom code
            break;
        }
    }

これは基本的に、スワイプが発生した場合、アクティブなデータグリッドを上下に 60 単位 (2 行) スクロールすることを示しています。誰かがこれを行う方法を知っている場合は、助けていただければ幸いです。^_^

4

1 に答える 1

0

単なる提案です (私はまだこれを自分で試していませんが)、スワイプのエクスペリエンスはムービー クリップ (またはコンテンツ) のサイズに大きく依存します。

したがって、固定数 60 を使用する代わりに、 のようなものを使用できますdgSubject.height / 3。( 3 スワイプで最後に到達するように 3 )。

何かを投げて、より多くの思考を引き起こしたいだけです。

また、次のリンクを見つけました: http://www.greensock.com/throwprops/ http://www.swfgeek.net/2011/09/08/greensocks-throwpropsplugin-ipad-test/

彼らがあなたの問題を解決するかどうかを確認してください

于 2013-12-13T02:14:45.850 に答える