2016-09-26 10 views
1

navigator.push({...})を呼び出して別のシーンに移動すると、現在のシーンが左にスライドし、新しいシーンがfrom右。問題は、現在のシーンが新しいシーンよりもはるかに遅く(画面幅の1/4程度しか動かないように見える)、新しいシーンが現在のシーンと実際にぶつかりオーバーラップすることです。React Native Navigatorの遷移問題

これを修正する方法はありますか?

RNバージョン:0.34 ナビゲーター(ない NavigatorIOS)

私はシミュレータでアプリを実行しています。

ありがとうございます。

答えて

3

アニメーションとパフォーマンスをテストするときは、Chromeデバッガまたはdevtoolsを使用していないことを確認する必要があります。遅い理由は、完全に異なるマシンでアプリのJavaScriptを実行しており、メッセージを前後に渡すために多くのオーバーヘッドが発生するためです。

https://github.com/facebook/react-native/issues/5632

また、falseに開発モードを設定し、それが違いを作るかどうかを確認することができます。

デベロッパーモードで実行すると、JavaScriptスレッドのパフォーマンスが大幅に低下します。これは避けられないことです:propTypesやその他のさまざまなアサーションの検証など、良い警告とエラーメッセージを提供するために、実行時に多くの作業を行う必要があります。

https://facebook.github.io/react-native/docs/performance.html

+0

ありがとう@Lian、私の場合、リモートデバッグはオンになっていませんでした。アニメーションは実際には非常に滑らかです。スライドアウトシーンは画面の1/4しか移動しません。 –

0

OK、私はこれを考え出し、それは私自身のせいです - 私はその方法アウトのシーンが約1/4画面幅を移動することになって判明しました。その途中のシーンは「キャッチアップ」し、途中でシーンをカバーします。

私の問題は、2番目のビューにbackgroundColorが設定されていないため、両方のシーンのコンテンツがブレンドされて間違っているように透明になりました。

関連する問題