React Native Swiper 多张图片

React Native Swiper multiple images

我正在使用 react-native-swiper,但我没有在文档中找到解决我的问题的方法。目前它一次给我看一张照片。但我想要一张半,而且总是一张一张地滑动。不知何故可能吗,因为幻灯片有严格的宽度。

我想要达到的设计:

这是我当前的代码:

class Featured extends Component {
    /**
     * Render the featured box
     */
    renderFeatured() {
        return this.props.featured.data.items.map(object => (
                <View style={styles.slide} key={object.id}>
                    <FeaturedBox
                        id={object.id}
                        image={Helpers.getPrimaryImage(object.images)}
                        text={object.name}
                    />
                </View>
            )
        );
    }

    render() {
        if (Helpers.isObjectEmpty(this.props.featured)) {
            return (
                <View />
            );
        }
        return (
            <View>
                <Swiper
                    style={styles.wrapper}
                    height={150}
                    horizontal={false}
                    showsPagination={false}
                >
                    {this.renderFeatured()}
                </Swiper>
            </View>
        );
    }
}

const styles = StyleSheet.create({
    wrapper: {
    },
    slide: {
        flex: 1,
        justifyContent: 'center',
        alignItems: 'center',
    }
});

FeaturedBox 基本上只是一张图片。

我找到了解决方案,将 Swiper 更改为 Carousel

您可以通过以下代码执行此操作;

<Swiper removeClippedSubviews={false}>

<View style={{width: screenWidth - 100}}></View>

<View style={{marginLeft: - 100}}> </View>

</Swiper>

我和你有同样的问题。

我尝试了很多次,最终解决了这个问题,我为这些用例创建了 npm 包。

首先,您可以通过您的设备在图像中添加特定宽度来解决此错误。

如果您的用例是添加多张图片,那么您可以使用以下方法轻松解决。

希望react-native-image-swiper对您有所帮助。

用法

import {Dimensions} from 'react-native';
import ImagesSwiper from "react-native-image-swiper";
const { width, height } = Dimensions.get("window");

<ImagesSwiper width={width} height={height-400} />

我建议你使用react-native-snap-carousel 请关注下方 link 了解更多详情 https://www.npmjs.com/package/react-native-snap-carousel