基于React Native 0.52实现轮播图效果


Posted in Javascript onAugust 25, 2020

本文基于React Native 0.52

Demo上传到Git了,有需要可以看看,写了新内容会上传的(Git地址)

一、总览

轮播图几乎是必备的效果,这里选择 react-native-swiper 来实现,效果如下图:

基于React Native 0.52实现轮播图效果

二、实现轮播图效果

1、通过npm安装react-native-swiper

npm install react-native-swiper --save

2、在recommend.js引入react-native-swiper

import Swiper from 'react-native-swiper';

3、用 react-native-swiper 可以很容易的实现轮播的效果

  • showButtons —— 是否显示左右翻页按钮
  • autoPlay —— 是否自动播放
  • paginationStyle —— 包含小点点的容器的样式,这里用来调整位置
  • dotStyle —— 小点点的样式
  • activeDotStyle —— 当前被激活的小点点的样式
<Swiper
  style={styles.wrapper}
  height={width*40/75}
  showsButtons={false}
  autoplay={true}
  paginationStyle={styles.paginationStyle}
  dotStyle={styles.dotStyle}
  activeDotStyle={styles.activeDotStyle}
>
  <Image source={require('../../img/1.jpg')} style={styles.bannerImg} />
  <Image source={require('../../img/2.jpg')} style={styles.bannerImg} />
  <Image source={require('../../img/3.jpg')} style={styles.bannerImg} />
  <Image source={require('../../img/4.jpg')} style={styles.bannerImg} />
  <Image source={require('../../img/3.jpg')} style={styles.bannerImg} />
</Swiper>

样式:

const styles = StyleSheet.create({
 container: {
  flex: 1,
  alignItems: 'center',
  backgroundColor: '#fff',
 },
 bannerImg: {
  height: width*40/75,
  width: width,
 },
 wrapper: {
  width: width,
 },
 paginationStyle: {
  bottom: 6,
 },
 dotStyle: {
  width: 22,
  height: 3,
  backgroundColor:'#fff',
  opacity: 0.4,
  borderRadius: 0,
 },
 activeDotStyle: {
  width: 22,
  height: 3,
  backgroundColor:'#fff',
  borderRadius: 0,
 },
});

三、解决不显示问题

轮播图放在APP的首页,同样有不显示的问题,解决办法和上一篇的办法几乎一样,可以看一下上一篇或是完整代码,这里就不再赘述。

这里和上一篇相比有两处不一样,需要说一下。

1、真正调用接口加载图片的时候,不会出现一开始图片不显示的问题。

2、在状态为false的时候,先显示第一张图片

if (this.state.swiperShow) {
 return (
  <Swiper >
   …………略
  </Swiper>
 )
} else {
 return (
  <View style={{ height: width*40/75 }}>
   <Image source={require('../../img/1.jpg')} style={styles.bannerImg} />
  </View>
 );
}

recommend.js完整代码 地址

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
超级简单的图片防盗(HTML),好用
Apr 08 Javascript
JQuery index()方法使用代码
Jun 02 Javascript
Javascript引用指针使用介绍
Nov 07 Javascript
jQuery操作表格(table)的常用方法、技巧汇总
Apr 12 Javascript
Angularjs实现多个页面共享数据的方式
Mar 29 Javascript
浅析javaScript中的浅拷贝和深拷贝
Feb 15 Javascript
Vuejs中使用markdown服务器端渲染的示例
Nov 22 Javascript
详解如何优雅地在React项目中使用Redux
Dec 28 Javascript
如何将你的AngularJS1.x应用迁移至React的方法
Feb 01 Javascript
JavaScript实现的文本框placeholder提示文字功能示例
Jul 25 Javascript
微信小程序如何实现五星评价功能
Oct 15 Javascript
JS中比较两个Object数组是否相等方法实例
Nov 11 Javascript
详解webpack打包后如何调试的方法步骤
Nov 07 #Javascript
微信小程序列表中item左滑删除功能
Nov 07 #Javascript
Angular 实现输入框中显示文章标签的实例代码
Nov 07 #Javascript
VueCli3构建TS项目的方法步骤
Nov 07 #Javascript
vue调试工具vue-devtools安装及使用方法
Nov 07 #Javascript
vue+webpack中配置ESLint
Nov 07 #Javascript
利用jqgrid实现上移下移单元格功能
Nov 07 #Javascript
You might like
php中使用gd库实现下载网页中所有图片
2015/05/12 PHP
Yii2 中实现单点登录的方法
2018/03/09 PHP
jQuery 处理网页内容的实现代码
2010/02/15 Javascript
ExtJs grid行 右键菜单的两种方法
2010/06/19 Javascript
纯javascript制作日历控件
2015/07/17 Javascript
基于replaceChild制作简单的吞噬特效
2015/09/21 Javascript
jQuery实现简单的文件上传进度条效果
2020/03/26 Javascript
JavaScript通过使用onerror设置默认图像显示代替alt
2016/03/01 Javascript
JavaScript中用let语句声明作用域的用法讲解
2016/05/20 Javascript
AngularJS入门教程之模块化操作用法示例
2016/11/02 Javascript
node.js Sequelize实现单实例字段或批量自增、自减
2016/12/08 Javascript
详解JavaScript对象的深浅复制
2017/03/30 Javascript
jQuery实现动态生成表格并为行绑定单击变色动作的方法
2017/04/17 jQuery
Vue结合Video.js播放m3u8视频流的方法示例
2018/05/04 Javascript
JS实现图片懒加载(lazyload)过程详解
2020/04/02 Javascript
[48:41]VP vs VG Supermajor小组赛 B组胜者组决赛 BO3 第二场 6.2
2018/06/03 DOTA
一篇不错的Python入门教程
2007/02/08 Python
介绍Python中的一些高级编程技巧
2015/04/02 Python
Python与Java间Socket通信实例代码
2017/03/06 Python
[原创]教女朋友学Python3(二)简单的输入输出及内置函数查看
2017/11/30 Python
python 实现视频 图像帧提取
2019/12/10 Python
PyCharm汉化安装及永久激活详细教程(靠谱)
2020/01/16 Python
使用python实现微信小程序自动签到功能
2020/04/27 Python
html5文本内容_动力节点Java学院整理
2017/07/11 HTML / CSS
巴西美妆购物网站:Kutiz Beauté
2019/03/13 全球购物
洛佩桑酒店官方网站:Lopesan Hotels
2019/04/15 全球购物
贝佳斯官方网站:Borghese
2020/05/08 全球购物
.NET方向面试题
2014/11/20 面试题
绿化先进工作者事迹材料
2014/01/30 职场文书
《永远的白衣战士》教学反思
2014/04/25 职场文书
授权委托书范文
2014/07/31 职场文书
务工证明怎么写
2015/06/18 职场文书
基层工作经历证明
2015/06/19 职场文书
学校教师培训工作总结
2015/10/14 职场文书
企业文化学习心得体会
2016/01/21 职场文书
MySQL 原理与优化之原数据锁的应用
2022/08/14 MySQL