iOS开发之ImageView复用实现图片无限轮播

  在上篇博客中iOS开发之多图片无缝滚动组件封装与使用给出了图片无限轮播的实现方案之一,下面在给出另一种解决方案。今天博客中要说的就是在ScrollView上贴两个ImageView, 把ImageView进行交替切换来实现图片的无限轮播,在轮播时去修改ImageView上的图片。上一篇博客中是有几张图片就实例化几个ImageView, 然后事先把Image贴到相应的ImageView上,这种做法比较简单,而且易于实现。

  今天这篇博客就要实现使用两张ImageView, 交替的区展示Image, Image是在将要显示的时候才贴到ImageView上,好废话少说,进入今天博客的主题。

  一、运行效果及原理分析

    1.Demo的运行效果

    下图的Gif是本片博客Demo的运行效果,但从效果上来看,和上一篇博客的运行效果是一样的,但本质和实现原理是不同的。在本篇博客的结尾会给出Demo在Github上的分享地址,首先大家可以看一下效果,是可以无限轮播的,而且可以支持手动滑动。点击每张图片也是会通过Block回调的方式给出每张图片的索引的。

    2. 原理实现分析

    下图呢是简单画的原理图,以3张图片为例,当然使用的是两个ImageView,并给出了三张图片在两张ImageView以及在可视区的展示顺序。把原理搞明白了敲代码也就轻松了,在写代码时不要在思路不清晰的情况下就开始动键盘。原理的核心就是当是新的图片永远是加在第二张ImageView上的,下一轮的第一张图片,是上一轮的第二张图片,这样就可以形成一个无缝滚动了。还是看下面这张原理图吧,自己画的,应该是可以看的。

 二、demo分享

    关于本篇博客的代码呢,就不一行一行的往博客上粘贴了,原理明白了,实现应该不成问题的,本篇的博客代码会分享到github上,下方是github的分享地址,有兴趣的小伙伴可以Clone一下。

    gitHub分享地址:https://github.com/lizelu/ZLImageScrollView

    接下来的几篇博客会给大家分享SQLite的一些东西,更深一层的窥探一下SQLite数据库~

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏拂晓风起

createjs入门

20030
来自专栏司想君

React编程思想

能够按照构建的方式来思考web app的实现,是React众多优点之一。在这篇文章中,我们将引导你进行使用React构建可搜索产品数据表的思考过程。

53750
来自专栏司想君

React编程思想

在我们团队看来,React是使用JavaScript构建大型、快速的Web apps的首选方式。它已经在Facebook和Instagram项目中,表现出了非常...

42190
来自专栏Youngxj

EMLOG评论获取QQ资料

34540
来自专栏小狼的世界

自定义地址栏与收藏夹中的图标

favicon 在英文中有几个别名,叫做 shortcut icon,website icon,tab icon,URL icon,bookmark icon,...

21250
来自专栏影子

Ionic如何实现单选二级菜单切换

40390
来自专栏james大数据架构

Android一些关于分辨率和布局的设置

1、Android手机屏幕大小不一,有480x320, 640x360, 800x480.怎样才能让App自动适应不同的屏幕呢? drawable- hdpi、...

21990
来自专栏進无尽的文章

实践-做一个会性能调优的好猿

对于每位 iOS 开发者来说,代码性能是个避不开的话题。随着项目的扩大和功能的增多,没经过认真调试和优化的代码,要么任性地卡顿运行,要么低调地崩溃。一般性能测试...

9120
来自专栏phodal

我们是如何将 Cordova 应用嵌入到 React Native 中

重写一个应用是一件简单的事,可是演进一个应用则是一件复杂的工作。 过去的一年多里,我在工作上的主要职责是:手机 APP 开发。日常主要是编写基于 Ionic 和...

29060
来自专栏码农分享

Selenium + C# 实现模拟百度贴吧签到 2

通过上文的例子,我们对Selenium的用法有了一个简单的印象。接下去我们还是基于这个组件进行模拟百度贴吧签到的功能。

15430

扫码关注云+社区

领取腾讯云代金券