一 关于轮播类组件,网上其实已经有挺多了,本人曾经用过 swiper,viewpager,以及facebook出品的viewpagerAndroid。

swiper因在安卓上有问题,而且在组件嵌套使用时问题较多,所以弃用。

后来尝试viewpager,因为轮播时,下面的圆点显示有误,所以弃用。

而ViewpagerAndroid因为只支持安卓系统,所以很少用到,在ios必须另找组件。

最近发现了新的组件  react-native-looped-carousel ,看着还不错,于是介绍一下使用方法。

二 looped-carousel使用介绍

安装

npm install react-native-looped-carousel --save

属性

Name propType default value description
autoplay boolean true 是否自动轮播
delay number 4000 多少毫秒切换一次
currentPage number 0 设置初始页
pageStyle style null 页面的样式
contentContainerStyle style null contentContainerStyle for the scrollView
onAnimateNextPage func null 切换轮播图时的回调方法
swipe bool true 是否允许手势滑动也换页面
分页 --- --- ---
pageInfo boolean false 是否在底部显示当前页面下标 / 页面个数
pageInfoBackgroundColor string 'rgba(0, 0, 0, 0.25)' 分页的背景色
pageInfoBottomContainerStyle style null pageInfo容器的样式
pageInfoTextStyle style null pageInfo中的文本样式
pageInfoTextSeparator string ' / ' 在 当前页面下标 和 页面个数之间的分隔符
小圆点 --- --- ---
bullets bool false 是否在轮播的底部显示小圆点
bulletStyle style null bullet(小圆点)的样式
bulletsContainerStyle style null style for the bullets container
chosenBulletStyle stlye null bullet的容器的样式
导航箭头 --- --- ---
arrows bool false 是否显示轮播的导航箭头
arrowsStyle style null 导航箭头的样式
arrowsContainerStyle style null 导航箭头的容器样式
leftArrowText string / element 'Left' 左箭头的文字或图片
rightArrowText string / element 'Right' label / icon for right navigation arrow

使用

import React, { Component } from 'react';
import {Text,View,Dimensions,
} from 'react-native';
import Carousel from 'react-native-looped-carousel';const { width, height } = Dimensions.get('window');export default class CarouselExample extends Component {constructor(props) {super(props);this.state = {size: { width, height },};}_onLayoutDidChange = (e) => {const layout = e.nativeEvent.layout;this.setState({ size: { width: layout.width, height: layout.height } });}render() {return (<View style={{ flex: 1 }} onLayout={this._onLayoutDidChange}><Carouseldelay={2000}style={this.state.size}autoplaypageInfoonAnimateNextPage={(p) => console.log(p)}><View style={[{ backgroundColor: '#BADA55' }, this.state.size]}><Text>1</Text></View><View style={[{ backgroundColor: 'red' }, this.state.size]}><Text>2</Text></View><View style={[{ backgroundColor: 'blue' }, this.state.size]}><Text>3</Text></View></Carousel></View>);}
}

以上是作者的使用事例,比较简单,下面我结合 它公开的属性来慢慢展开:

1.显示下面的分页个数的

<Carousel
    delay={2000}   //自动切换的延迟 (毫秒)
    style={{width:375,height:200}}  //轮播组件的样式
    autoplay    //自动轮播
    pageInfo    //在底部显示当前页面下标 / 页面个数
    swiper      //允许手势滑动
    pageInfoBackgroundColor={'#fff'}  //分页标示的背景色
    onAnimateNextPage={(p) => console.log(p)}  //切换页面时的回调
    pageInfoTextStyle={{color:'blue'}}     //下面字体样式
    pageInfoTextSeparator={'!!!'}          //中间的分隔符
>
    {React.Children.map(['aa','bb','cc'],(child,index)=>{return(<View style={styles.container}>
            <Text>{child+','+index}</Text>
            </View>
        )})}
</Carousel>

看一下图,该项目是我平时写demo的,所以凌乱的动画请无视。。

2. 显示小圆点的

<Carousel
    delay={2000}   //自动切换的延迟 (毫秒)
    style={{width: 375, height: 200}}  //轮播组件的样式
    autoplay    //自动轮播
    pageInfo={false}    //在底部显示当前页面下标 / 页面个数
    swiper      //允许手势滑动

    bullets={true}  //显示小圆点
    bulletStyle={{backgroundColor: '#fff', width: 5, height: 5}} //未选中时小圆点的样式
    chosenBulletStyle={{backgroundColor: 'red', width: 5, height: 5}}//选中时小圆点的样式

    arrows={true}  //显示导航箭头
    leftArrowText="left️" //左导航
    arrowsContainerStyle={{paddingHorizontal:20}}   //箭头容器样式
    rightArrowText={<Animated.Image  //右导航
        style={{transform: [{rotate: spin}],
            height:20,
            width:20
        }}source={require('./img/a.jpg')}/>}
>
    {React.Children.map(['aa', 'bb', 'cc'], (child, index) => {return (<View style={styles.container}>
                <Text>{child + ',' + index}</Text>
            </View>
        )})}
</Carousel>

如图所示:

目前看上去还是很方便的,有需要的可以看一下啊~

react-native 轮播组件 looped-carousel使用介绍相关推荐

  1. 基于移动端Reactive Native轮播组件的应用与开发详解

    总结下这段时间学习reactive native的一些东西,我们来认识一下,被炒得这么火的rn,究竟是个什么东西,以及如何去搭建自己的demo. reactive  native是什么 由facebo ...

  2. 《layui宇宙版教程》:轮播组件carousel

    <Layui宇宙版教程>提供2000人的QQ群进行交流学习,QQ群号:1046961650,或通过手机QQ扫描二维码进入: 1.30 轮播组件carousel carousel主要适用于跑 ...

  3. React Native 二 常用组件与开源组件

    2019独角兽企业重金招聘Python工程师标准>>> #0.手把手教React Native实战之开山篇##作者简介东方耀 Android开发RN技术 facebookgithub ...

  4. 响应式轮播_角度2的响应式轮播组件

    响应式轮播 Update (March 22, 2016): Provided a Demo Link which is available on PlunkerUpdate (March 21, 2 ...

  5. Omi-touch实战 移动端图片轮播组件的封装

    pc端的轮播,移动端的轮播都很常见.一年前,我还为手机端没有左滑,右滑事件从而封装了一个swipe库,可以自定义超过多少滑动时间就不触发,也可以设置滑动多少距离才触发,这一个功能的代码就达到400多行 ...

  6. 推荐一款带暂停功能的轮播组件,不要谢我,我叫红领巾!

    阅读目录 一.效果展示 1.先跟大家见个面,打个招呼 2.什么?切换太慢了?好,加快速度! 3.加入其他功能 4.图片太小,看不出效果?好,那来个大图感受下! 5.如果你不想要右上角的小图标,照样可以 ...

  7. 【Flutter】Banner 轮播组件 ( flutter_swiper 插件 | Swiper 组件 )

    文章目录 一.flutter_swiper 插件 二.Swiper 组件使用 三.完整代码示例 四.相关资源 一.flutter_swiper 插件 到 https://pub.dev/package ...

  8. Vue.js-Day06-PM【项目实战(附带 完整项目源码)-day01-pm:轮播组件(使用、安装依赖、具体操作过程)、favicon详细制作】

    Vue.js实训[基础理论(5天)+项目实战(5天)]博客汇总表[详细笔记] 实战项目源码[链接:https://pan.baidu.com/s/1r0Mje3Xnh8x4F1HyG4aQTA   提 ...

  9. Angular2组件与指令的小实践——实现一个图片轮播组件

    如果说模块系统是Angular2的灵魂,那其组件体系就是其躯体,在模块的支持下渲染出所有用户直接看得见的东西,一个项目最表层的东西就是组件呈现的视图. 而除了直接看的见的躯体之外,一个完整的" ...

  10. ES6公用立体轮播组件的封装及使用

    ES6公用立体轮播组件的封装及使用 源码github链接:https://github.com/XieTongXue/how-to/tree/master/carousel-3d 1.效果展示 2.容 ...

最新文章

  1. 基于simulink的QAM-WIMAX的系统仿真
  2. CentOS 7安装Keepalived
  3. oracle执行命令显示2,Oracle数据库执行脚本常用命令小结
  4. DIY修改博客园背景用【保存图片用】
  5. java程序嵌入地图_java – 使用JPA存储地图
  6. 高校战役结束,中小学市场战斗吹响号角
  7. 【正则表达式系列】零宽断言
  8. windows下 dos 执行php 代码
  9. 手机上有没有学python的软件-三款可以在安卓手机上运行Python代码的软件
  10. 关于各种服务器在境外的软件安装缓慢的问题解决方法
  11. linux 查找py文件命令_小命令大作用---linux 下快速查找
  12. 微创器械行业调研报告 - 市场现状分析与发展前景预测
  13. JavaScript 中的继承:ES3、ES5 和 ES6
  14. c语言数组升序排列,数组输入各数之间用空格隔开,输出用空格隔开
  15. (转载+原创)jQuery实现的全选、全不选、反选和半选功能
  16. 国产自研开源大数据管理平台DataSophon Manager安装教程
  17. 深入理解模拟退火算法(Simulated Annealing)
  18. 华为手机android9隐藏游戏的方法,我的华为Mate10pro为什么玩不了安卓隐藏小游戏?...
  19. 关于数据挖掘中“多重共线性”的确定方法(有图有真相)
  20. 第四章 Python组合数据类型

热门文章

  1. 算法提高 盾神与条状项链
  2. 500次 “LOVE“的歌词 Taylor Swift歌词数据可视化分享
  3. Windows中的工作组
  4. Photoshop制作电影胶片效果
  5. 3D劲舞游戏 Dance Mixer 简体中文汉化版+常见问题(更新1.1补丁 汉化)
  6. 情绪管理---第二课:情绪包含四方面的反应
  7. linux系统双显示器怎么设置复制,在 Linux 中配置双显示器
  8. 恢复Windows7快捷方式小箭头的方法
  9. 如何设计SEO关键字分析统计表
  10. unc0ver 越狱工具来袭,免电脑操作,支持 A7-A12,支持iOS11~iOS12.4稳定越狱