UICollectionView水平连续循环

2023-11-22

所以我有一个 UICollectionView,每个单元格都有自定义 UIView。 UIView 占据整个屏幕,您可以水平导航到 4 个不同的 UIView/单元格中的每一个。这一切都工作正常,并使用寻呼机来指示您位于集合视图的哪个页面。

我环顾过谷歌等,看看是否可以在导航通过最后一个单元格后让它循环回到开头。例如:

我从第三个单元格开始,导航到第四个单元格,然后当我向右滑动时,它将返回到第一个单元格(寻呼机将反映您位于第一页)并从那里继续。

这容易做到吗?或者我错过了什么?

谢谢, 杰克


您只需要 3 个 UIView,即可将图像放置在当前视图左侧、当前视图右侧的图像以及中间视图(当前屏幕上的视图)上。

假设我们有 UIImages A B C D 和 UIViews 1 2 和 3

我们正在查看视图 2,图像 B。向左翻页将带我们到图像 A,向右翻页将带我们到图像 C。

当您向左/向右滑动页面时,视图 3 变成带有图像 C 的屏幕视图。当分页停止时,您交换视图内容,以便用户实际上再次查看中间的 UIView2,带有图像 C。视图 1 具有图像B,视图 3 有图像 D。

再次向右滚动,然后进行相同的随机播放。现在你有

View 1 -> image C
View 2 -> image D
View 3 -> image A

下一页右

View 1 -> image D
View 2 -> image A
View 3 -> image B

依此类推,在任一方向上无限

2011 年有一个关于这个主题的精彩 WWDC 视频。值得挖掘。这是 UIScrollView 演示视频 (PDF 格式的文档)你不需要集合视图来做到这一点,尽管没有理由你不应该......

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

UICollectionView水平连续循环 的相关文章

  • iOS 6 模拟器卡在启动画面上

    我正在使用 Mac os 10 8 2 和 Xcode 4 5 2 当我尝试在 ios 5 5 1 模拟器中运行我的应用程序时 它工作正常 但是当我尝试在 ios 6 模拟器中运行应用程序时 它会卡在空白屏幕上 谁能让我知道我的问题的解决方
  • 如何使用延迟位置 iOS 6?

    我正在尝试使用新的 iOS 6 延迟位置更新功能 但不断收到此错误 didFinishDeferredUpdatesWithError Error Domain kCLErrorDomain Code 11 操作无法完成 kCLErrorD
  • 使用反向无限滚动添加到 ListView 时保持滚动位置

    我正在构建一个类似聊天的 Android 应用程序 类似于环聊 为此 我使用垂直 ListViewstackFromBottom true and transcriptMode normal 该列表按从较旧的消息 顶部 到较新的消息 底部
  • 无法调整 Android React Native 模块中线性布局子项的大小

    完整代码在这里 https github com sbaar ResizableLLRN 这里有关于 java 中正确行为和 React Native 中错误行为的视频 https drive google com file d 0Bxl2
  • iPhone中的异步for循环

    for循环看起来像这样 我在视图中编写的确实加载了 因此加载此页面需要更多时间 for int i 3 i lt dataDict objectForKey rss objectForKey channel objectForKey ite
  • LibGdx 如何使用 OrthographicCamera 滚动?

    我已经找了 10 个小时 字面意思 我已经完成了 我需要问一下 事情是我正在学习如何使用 LibGdx 来编写 Java 游戏 我正在做一个水平太空飞船游戏 所以 我最糟糕的问题是我不知道如何滚动 我认为绘制会更好地解释 我想绘制一个巨大的
  • UICollectionView 装饰和补充视图无法移动

    In UICollectionView装饰和补充意见似乎是一个很大的谜团 目前似乎几乎没有示例代码 我设法让这两种类型在自定义布局中工作 请参阅此post https stackoverflow com questions 12810628
  • 调试 iOS 应用程序时控制台中的 Webcore NSBeep()?

    当我在 iPhone 上运行 iOS 6 应用程序时 我在控制台中收到这条奇怪的消息 Webcore NSBeep 我在其他帖子中读到 这个 NSBeep 在 iOS 中根本不存在 除此之外 我在我的应用程序中根本没有使用与网络相关的任何内
  • UIView 重写drawRect 导致视图不遵守maskToBounds

    我正在尝试覆盖drawRect 我的自定义视图中的 UIView 方法 但是 我的视图的边界半径定义为 sub NSBundle mainBundle loadNibNamed ProfileView owner self options
  • 将 Xcode 4.5 新 XIB 文件恢复到 iOS<6

    我已经安装了Xcode 4 5 with iOS6 SDK以及其他用于测试目的的旧 SDK 从 4 3 到 6 0 很美 但是有一个BIG问题 生成一个新的 XIB 文件以兼容 iOS6 这是一个问题 因为我的应用程序需要运行在旧设备 不只
  • UICollectionReusableView 方法未被调用

    我希望我的部分位于UICollectionView有一个带有图像的标题 我已按照以下步骤操作 在故事板中 分配了一个标题作为我的附件UICollectionView 给它一个标识符 创建了一个子类UICollectionReusableVi
  • 带约束的嵌套集合视图的意外行为 (Swift 4)

    我的表格视图中有一个单元格 其中包含水平分页集合视图 该集合视图的每个页面内都有一个垂直集合视图 为了避免 滚动滚动 问题 我在垂直集合视图中禁用了垂直滚动 垂直集合视图的单元格计数不是静态的 可以是任意数字 因此 这会产生一个问题 集合视
  • 动画 UICollectionView 单元格大小更改并重新定位周围单元格

    Goal 以动画方式改变单元格的高度并重新定位周围的单元格 设想 集合视图中的某些单元格会加载远程图像 最初 这些单元格的大小是静态的 并显示活动指示器 加载图像后 会将其添加到其单元格中 并且更改单元格的高度以适合照片 Notes 我正在
  • XCode 4.5 给我“SenTestingKit/SenTestKit.h”文件未找到,但适用于 4.4.1

    我刚刚安装了 XCode 4 5 它在我现有的项目之一上给了我一个 SenTestingKit SenTestingKit h 文件未找到错误 此错误仅发生在 XCode 4 5 中 但它在 4 4 1 上编译正常 我已经检查过SenTes
  • 现有的和未输入错误的密钥的 NSUnknownKeyException

    我得到以下输出 Terminating app due to uncaught exception NSUnknownKeyException reason
  • iOS 滚动视图允许滚动过去的内容

    我正在努力优化我的应用程序以适应横向和较小的屏幕 我主要使用滚动视图来实现这一点 在我的其中一个视图中 我有一个容器视图 当我在故事板中的设备之间切换时 这个容器视图看起来很完美 容器视图映射到具有滚动视图的视图控制器 该滚动视图的顶部 底
  • Ajax - 限制列表的加载,然后在滚动上加载其余部分

    我有一家商店 在一个页面上显示某个类别的所有产品 这是店主喜欢的方式 因此不能选择分页 为了缩短某些重类别的加载时间 我希望实现一个可以加载许多产品的脚本 li s然后在页面滚动上加载另一组 页面就是用这个结构生成的 div ul clas
  • UIScrollView - 启用分页后,我可以“更改”页面宽度吗?

    将滚动视图 将 pagingEnabled 设置为 YES 将页面宽度设置为滚动视图边界以外的其他值的最简单方法是什么 让我举个例子 假设我有一个包含 10 个项目的滚动视图 每个项目的宽度为 150 像素 而我的滚动视图的宽度为 300
  • IOS6 Mapkit 许可、使用条款 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 在IOS6中 地图数据从Google替换为Apple自己的地图数据 过去 使用 MapKit 时您必须接受 Google 地图许可和使用条
  • 防止UIScrollView的UIPanGestureRecognizer遮挡UIScreenEdgePanGestureRecognizer

    我有一个UIScrollView它填满了我应用程序的一页上的屏幕 但我希望允许用户从屏幕边缘平移以显示其后面的视图 问题是 UIScrollView 窃取了我的触摸UIScreenEdgePanGestureRecognizer在屏幕边缘

随机推荐

  • 套接字编程的替代方案是什么?

    我正在浏览编程疑难解答 我想知道套接字编程的替代方案是什么 如果有的话 假设您可以控制所使用的协议 您可以选择更高级别的抽象 例如 NET 的 Remoting 或 WCF
  • 获取主窗口的位置/宽度/高度[重复]

    这个问题在这里已经有答案了 我想知道获取有关主窗口当前位置和宽度 高度信息的最佳方法 我想在主窗口内保留一个子窗口 因此我想在子窗口的移动功能期间检查 MainWindows 边框的坐标 我只能找到 Window LocationChang
  • 当页面完全呈现时,如何执行 JavaScript 函数?

    当页面完全呈现 显示 时 您将如何执行 JavaScript 函数我知道onLoad事件在页面加载时但在渲染之前执行 我之前已经通过使用间隔为 0 的超时来解决这个问题 这似乎通常有效 但对于我敏感的情感来说似乎有点不优雅 有没有正确的方法
  • 是否可以更改 Spacy 分词器的分词规则?

    默认情况下 德语 spacy 分词器不会按斜杠 下划线或星号进行拆分 这正是我所需要的 因此 der die 会生成单个标记 然而 它确实在括号上拆分 因此 dies und das 被拆分为 5 个标记 有没有一种 简单 方法告诉默认标记
  • Video.js YouTube 视频

    我无法让 youtube 视频与 video js 一起使用 我在头部添加了 然后在正文中
  • Proguard 阻止 WebView 中的 Javascript 工作

    我有一个 JSBridge 类 内部类 它是一个 javascript 接口 private class JsBridge implements JsCallback param handlerName method required pa
  • 调试 Flash 应用程序时如何仅抑制 [SWF] 跟踪

    我正在开发一个 Adob e Flex 应用程序 该应用程序加载大量 Flex 模块和其他 Flash 子应用程序和 Flash 资源 每次成功加载 flashlog txt 时 Flex 控制台都会显示类似 SWF filename sw
  • 如何知道指针是否在物理内存中,否则会触发页面错误?

    如果我有一个指针并且我关心内存访问性能 我可能会检查它的下一个操作是否会触发页面错误 如果可以的话 可以设计一种算法 重新排序循环操作以最大限度地减少页面错误 是否有任何可移植 或linux windows不可移植 的方法来检查特定内存地址
  • facebook API 中的刷新令牌和访问令牌

    当我们在 google api 上执行 oauth2 时 我们会获得一个访问令牌和一个刷新令牌 假设我正在编写一个服务 并且我想定期轮询更改 我可以在每次当前访问令牌失效时使用刷新令牌来获取新的访问令牌 这就是所谓的离线访问 有没有办法在
  • 将Base64图像上传到S3并返回URL

    我正在尝试使用 Python 将 Base64 图像上传到 S3 存储桶 我用谷歌搜索并得到了一些答案 但没有一个对我有用 有些答案使用 boto 而不是 boto3 因此它们对我来说毫无用处 我也尝试过这个链接 Boto3 将文件从bas
  • 如何使用 Shell 脚本在 Linux 中读取 Excel 工作表中的数据? [关闭]

    Closed 这个问题需要细节或清晰度 目前不接受答案 每个人 我是 Linux 新手 对编写 shell 脚本非常感兴趣 这次我正在制作一个Excel表格 在该 Excel 工作表中会有 S No 在第一列中 域名在第二列中 我的 Exc
  • iframe下处理#document的方法

    对于我现在正在测试的门户 我遇到了无法创建任何 xpath 定位器的问题 过了一段时间我发现这是因为 document 这会切断路径并生成简单的 复制 xpath 将路径引导至完全不同的元素 document CODE 我发现这个问题的解决
  • Ionic:如何在 $ionicPopup 中使用 cssClass?

    所以我想修改 ionicPopup 中的默认宽度 为此我必须将 cssClass 添加到我的弹出对象中 就像下面的代码一样 scope getScore function var popupScore ionicPopup alert ti
  • ClusterManager setOnCameraIdleListener

    在尝试实施使用时ClusterManager 我注意到getMap setOnCameraChangeListener clusterManager 已弃用 查看 Github 上的 android maps utils 示例 我注意到ge
  • Xcode 4 无法从静态库依赖项中找到公共头文件

    辅助搜索的替代标题 Xcode 找不到标头 Xcode 中缺少 h 未找到 Xcode h 文件 未找到词法或预处理器问题文件 我正在开发一个来自 Xcode 3 的 iOS 应用程序项目 我现在已经迁移到 Xcode 4 我的项目构建了许
  • Javascript检测android本机浏览器

    我想用 javascript 检测本机 Android 浏览器 每部 Android 手机上都安装的浏览器 我应该在 useragent 中寻找什么 这应该有效 var nua navigator userAgent var is andr
  • 如何使用 Active Directory 集成身份验证通过 python SQL alchemy 连接到 Azure sql 数据库

    我正在尝试使用 python 中的 SQL Alchemy 连接到 Azure SQL 数据库 该数据库最近从本地迁移到 Azure 据我所知 azure 不支持 Windows Auth 我可以使用 Active Directory 集成
  • 纱线客户端上的 Spark 执行器不采用执行器核心计数配置。

    无论 Spark 执行器核心数是多少 执行器的纱线容器不会使用超过 1 个核心 YARN 显示每个执行器有 1 个核心 无论spark executor cores因为默认情况下默认资源计算器用来 它只考虑内存 public int com
  • 如何在vista中向gac添加dll

    当我将 dll 拖放到 vista 上的程序集文件夹时 出现错误 访问被拒绝 mydll dll 如何绕过错误消息并将我的 dll 添加到 gac 我的猜测是 您必须以管理员身份执行此操作 尝试禁用 UAC 或使用 gacutil exe
  • UICollectionView水平连续循环

    所以我有一个 UICollectionView 每个单元格都有自定义 UIView UIView 占据整个屏幕 您可以水平导航到 4 个不同的 UIView 单元格中的每一个 这一切都工作正常 并使用寻呼机来指示您位于集合视图的哪个页面 我