2017-01-23 16 views
0

私は、1つのシーンに垂直のScrollViewと小さい水平のScrollViewを持っています。シーンの水平スワイプを無効にする

シーンは、それが正常に動作しますが、ユーザが水平スクロールにスクロールしようとする二度目は、シーン全体は次のような効果でドラッグされたレンダリングされる最初の時間:

enter image description here

プロパティNavigatorIOS.interactivePopGestureEnabledを設定する方法がありますか?またはコアNavigatorでこれを回避する方法はありますか?

私はすでにNavigatorを使ってナビゲーション全体を行っていますが、現在はNavigatorIOSに変更する必要があります。

更新:Androidでこれをテストしただけで、同じ動作をします。

答えて

1

カスタムアニメーションシーン設定を定義する必要があります。

const BaseConfig = Navigator.SceneConfigs.FloatFromRight; 
 

 
const CustomSceneConfigNoSwipeGestures = Object.assign({}, BaseConfig, { 
 
    springTension: 100, 
 
    springFriction: 1, 
 
    gestures: {} 
 
}); 
 

 
    pushScreen =() => { 
 
    this.props.navigator.push({ 
 
     name: 'My Screen', 
 
     component: MyScreen, 
 
     sceneConfig: CustomSceneConfigNoSwipeGestures, 
 
    }); 
 
    }

空ジェスチャー:{}オブジェクトがNavigator.SceneConfigsオブジェクトから適用される標準の動作を上書き。

+0

ありがとうございました。また、私はいくつかの洞察力を与えてくれました。この動作をした 'SceneConfigs'がいくつかあります。それは私を狂ってしまった。例えば、 'PushFromRight'はこのジェスチャーを持っていません。 – Eldelshell

関連する問題