2016-03-21 12 views
0

私のアプリでイオンネイティブトランジションプラグインを使用しています。私はページのためにslide upトランジションを使用しています。それは動作しますが、状態が変わると、短時間同じページが表示され、次に切り替えるページが表示されます。ここにはgithub linkがあります。デフォルトのオプションに異なる値を試しましたが、私の問題は解決しません。どんな助けにも感謝されますionic native transition pluginを使用中に同じページが表示されますか?

+0

コードをいくつか追加してください。それ以外の場合は、あなたがしようとしていることや間違っていることが分かりません。 –

答えて

0

あなたの問題が私と同じであるかどうかわかりません(次の/前の状態への移行が始まると "新しい状態"に移行すると "古いビューアニメーションの前/中)、ここで私がしたことがあります。私は、ionic.native-transitions(.min).jsのstateGo()関数の状態変化にタイムアウトを追加して、最後の関数として実行するという解決策を発見しました。次のコードは、iOSとAndroidデバイスの両方で動作します。 (私は可能性があり、それが唯一のiOSデバイスで発生したタイムアウトおそらく作られたAndroidデバイスが移行に少しちらつくので、私はiOSデバイスのためのチェックを追加してのみ、その場合には、タイムアウトを実行することを決め

function stateGo() { 
    var state = arguments.length <= 0 || arguments[0] === undefined ? null : arguments[0]; 
    var stateParams = arguments.length <= 1 || arguments[1] === undefined ? {} : arguments[1]; 
    var transitionOptions = arguments.length <= 2 || arguments[2] === undefined ? null : arguments[2]; 
    var stateOptions = arguments.length <= 3 || arguments[3] === undefined ? {} : arguments[3]; 

    if (!state) { 
    $log.debug('[native transition] cannot change state without a state...'); 
    return; 
    } 

    unregisterToStateChangeStartEvent(); 
    transition(transitionOptions); 
    if (ionic.Platform.isIOS()) { 
    $timeout(function() { 
     $state.go(state, stateParams, stateOptions); 
    }); 
    } else { 
    $state.go(state, stateParams, stateOptions); 
    } 
} 

これは実際には起こっていない、または私のアプリのコンテンツに大きな画像があるためです)。

同じ修正プログラムは、おそらくlocationurlを使用している場合にも機能します。この場合、「$ location.url(url);」にタイムアウトを設定するだけです。関数。

これがこの問題の最終的な解決策になるのかどうかはわかりませんが、今のところうまくいけば、プラグインはすぐに修正されるので、この問題は他の誰かを悩ますことはありません。使用しているとき

0

同じ問題が同様に私の側にいた。しかし

$scope.$on('$ionicView.enter', function(event, viewData) { 
    var transitionDirection = viewData.direction !== "back" ? "left": "right"; 
    var options = { 
     "direction": transitionDirection, 
     "duration": 600, 
     "androiddelay": 75 
    }; 
    window.plugins.nativepagetransitions.slide(
     options, 
     function() {}, 
     function() {} 
    ); 
}); 

、私は「$ ionicView.beforeEnter」に「$ ionicView.enter」イベントを変更したとき、それは私のためにケースを解きます。しかし、それが適切な解決策であるかどうかは分かりません。

関連する問題