2017-08-10 5 views
2

私はカードが一度に1つずつユーザーに提示されるインターフェイスを作成しようとしています。ユーザーはページ単位で左右にスクロールすることができます。私はまた、見るべきものがあるというヒントとして、現在のカードの左右に少量のカードを見たいと思っています。この非常にラフな例は次のようになります。次のページの一部を示すページネーゼーション+ネイティブScrollViewに反応します

enter image description here

現在のコードは次のとおりです。

<ScrollView 
    style={{width: Dimensions.get('window').width, height: 300}} 
    horizontal={true} 
    pagingEnabled={true} 
    showsHorizontalScrollIndicator={false} 
    alwaysBounceHorizontal={false} 
    automaticallyAdjustContentInsets={false}> 
    <View style={{width: 200, height: 300}}></View> 
    <View style={{width: 200, height: 300}}></View> 
    <View style={{width: 200, height: 300}}></View> 
</ScrollView> 

`

答えて

2

私はthis SO questionからmy answerはあなたを助けるかもしれないと思います。

要約すると、ScrollView、さらにはFlatListでこの種類のレイアウトを作成できます。

  • あなたが小道具snapToIntervalsnapToAlignmentを使用できるため、スナップ効果、:しかし、2つのトリッキーな部分があります。残念ながら、これらはiOS専用です。

  • 多くのカスタムロジックを必要とする非アクティブなスライドのアニメーション。

私はこの特定の必要性に答えるプラグインを作成しました。オープンソース化が終わったので、試してみるのはあなたのすべてです:react-native-snap-carousel

プラグインは現在、FlatList(バージョン> = 3.0.0)の上に構築されており、膨大な数のアイテムを処理するのに最適です。それは、プレビュー(あなたが後にしている効果)、iOSとAndroid向けスナップ効果視差画像RTLのサポート、および多くを提供します。

showcaseをご覧になると、これで達成できることを把握できます。私たちは常にそれを改善しようとしているので、あなたの経験をプラグインと共有するのをためらってください。

react-native-snap-carousel archriss showcasereact-native-snap-carousel archriss aix


編集:two new layoutsバージョン3.6.0(火口のような効果を持つカードの効果と他のスタックを有するもの)に導入されています。楽しい! `ScrollView`はの[全体の束を持っているので

react-native-snap-carousel stack layout react-native-snap-carousel tinder layout

+0

すべて良いが、長いスワイプスクロール複数の項目が、これはScrollView' – Giffo

+0

'へ 'pagingEnabled'異なりはい、いくつかの調整が行われなければなりませんでした制限](https://github.com/archriss/react-native-snap-carousel/tree/flatlist#flatlist-and-scrollviews-limitations)を参照してください。それでも、「scrollEndDragDebounceValue」を「0」に設定すると、それが役に立ちます。 'ScrollView'のprop [' decelerationRate'](https://facebook.github.io/react-native/docs/scrollview.html#decelerationrate)でプレイすることもできます(iOSのみ)。 – bend

+0

バージョン3.2.1はあなたが期待していたものに近いと思います。カルーセルの感覚をよりよくカスタマイズし、豊かな相互作用を提供するために、「FlatList」の上にカスタムスクロールを実装する作業に取り掛かる予定です。 – bend

関連する問題