0

QAはバグの本当の大騒ぎを提出したばかりで、私はそれを修正する方法に頭を悩ませています。

2つのボタン(戻るなど)と検索を同時に押すと、それぞれがが呼び出さExt.dispatchれ、2つの反対の遷移が同時に発生します。これにより、レイアウトが完全に!@#$になり、アプリが使用できなくなります。

これは、タッチ対応アプリの一般的な問題です...画面上に複数の指を置くと、ユーザーは奇妙で完全に互換性のないアクションの組み合わせを簡単にトリガーでき、アプリは一度に1つだけ受け入れる必要があります。Sencha Touchでこの状況を優雅に処理する方法はありますか?

4

1 に答える 1

0

イベントを聞いてbefore-dispatch、ディスパッチが進行中の場合はキャンセルして修正しました。

Ext.regApplication(...
    this._isDispatching = false,

    launch: function() {
        Ext.Dispatcher.on('before-dispatch', function () {
            var me;
            if (this._isDispatching)
                return false;
            else {
                this._isDispatching = true;
                me = this;
                setTimeout(function () {
                    me._isDispatching = false;
                }, 500);
                return true;
            }
        }, this);
    }

はい、500ミリ秒の遅延は間違いなくハッキーですが、移行が完了したことを検出するためのより堅牢な方法は考えられませんでした。after-dispatchイベントはなくdispatch、移行が完了する前にイベントが発生します。

これが誰かを助けることを願っています。

于 2012-09-25T19:03:58.087 に答える