在 UIScrollView 中滚动时动画停止

2024-04-11

因此,我试图制作一款游戏,用户必须尽可能快地向下滚动,才能逃脱无限增大的“块”。这是我的问题:我使用 UI ScrollView 作为滚动机制,并以普通 UI 视图作为子视图。我设置了每 0.005 秒触发一次,这会增加“块”的高度和滚动视图的内容高度(以便用户在技术上可以无限滚动)。问题是,每当用户开始滚动时,就会停止触发(即块停止变高)。然而,当用户停止滚动时,一切都会立即恢复正常。这是我拥有的所有代码:

- (void)viewDidLoad {
[super viewDidLoad];
self.mainScrollView.delegate = self;
self.mainScrollView.frame = CGRectMake(self.view.frame.origin.x, self.view.frame.origin.y, self.view.frame.size.width, self.view.frame.size.height * 2);


self.mainScrollView.backgroundColor = [UIColor greenColor];
self.mainScrollView.contentSize = CGSizeMake(self.view.frame.size.width, self.view.frame.size.height * 10);
self.mainScrollView.scrollEnabled = YES;

self.darknessBlock.frame = CGRectMake(self.view.frame.origin.x,   self.view.frame.origin.y, self.view.frame.size.width, 100);
self.darknessBlock.backgroundColor = [UIColor blueColor];

[NSTimer scheduledTimerWithTimeInterval:0.005 target:self selector:@selector(increaseDarknessHeight) userInfo:nil repeats:YES];

}


-(void)increaseDarknessHeight{
int newHeight = self.darknessBlock.frame.size.height + 1;
self.darknessBlock.frame = CGRectMake(self.view.frame.origin.x, self.view.frame.origin.y, self.darknessBlock.frame.size.width, newHeight);
}

任何关于为什么块停止增长的帮助都会很棒!对于这个具体/简单的问题,我感到抱歉,我对这个网站有点陌生,我只是在网上寻找有关此问题的帮助。


您应该将计时器添加到另一种循环模式:

NSTimer * timer = [NSTimer scheduledTimerWithTimeInterval:0.005 target:self selector:@selector(increaseDarknessHeight) userInfo:nil repeats:YES];
[[NSRunLoop mainRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];

更新为 Swift:

let timer = Timer.scheduledTimer(timeInterval: 0.005, target: self, selector: #selector(increaseDarknessHeight), userInfo: nil, repeats: true)
RunLoop.main.add(timer, forMode: .common)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 UIScrollView 中滚动时动画停止 的相关文章

  • 如何在 Swift 中将 Int 转换为字符

    我在这里挣扎了十多分钟 失败了 我屈服了 我需要在 Swift 中将 Int 转换为 Character 但无法解决它 Question 你如何转换 cast an Int integer to a Character char 在斯威夫特
  • iOS-Swift UIApplication.shared.isIdleTimerDisabled = true 在 AppStore 审核后不起作用

    努力实现停止屏幕在某些情况下进入睡眠状态View Controller 我做了什么我已在运行 iOS 12 1 12 的物理 iPhone 6 上使用以下代码测试了我的应用程序 我设置了手机Dislpay Brigthness gt Aut
  • 签名根框架中嵌入的子框架不起作用(Xcode 11.2.1)

    我有一个小型的概念验证应用程序 我试图在我的框架 AequumPOCFramework framework 中嵌入 并签名 一个框架 Alamofire 但是 当我尝试部署到我的设备时 它不断给出我的错误 在使用库验证的进程中使用无效 映射
  • 电话号码的 Swift 2 国家/地区代码

    我正在尝试从 iPhone 用户处获取国家 地区代码 我不确定是否有有关该国家 地区以及某些应用程序 如 Viber 如何建议拨号代码的信息 我到目前为止 let currentLocale NSLocale currentLocale l
  • 如何消除批处理文件动画中的闪烁? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 因此 我一直在批量制作一个假 GUI 以作为我正在做的 YouTube 评论的结尾 它基本上是一堆方框
  • 应用程序终止时处理通知(iOS)

    我正在开发接收通知的应用程序 使用苹果推送通知 我正在存储这些通知并在一个控制器中显示为列表 据我了解 每当收到通知时都会调用 didReceiveRemoteNotification 当应用程序位于前台和后台时 我可以通过 didRece
  • 检测 UITableViewCell 何时离开屏幕

    我正在实施一个丰富的UITableView与定制创建UITableViewCell 我以一种方式在屏幕上显示这些 但是一旦它们离开屏幕 我想记下这一点 因为它们第二次出现时我希望它们以不同的方式显示 认为离开屏幕时自动 标记为已读 我一直在
  • MapKit 注释未显示在地图上

    我无法让 MKAnnotationViews 显示在 MapKit 的地图上 我正在使用 iOS 7 现在已经在论坛和网络上搜索了很多小时 尝试不同的示例和设置 下面我有 我认为 使其工作的最基本的设置 该应用程序包含一个 ViewCont
  • Android 和 IOS 是否可以在后台发送短信?

    我想制作一个应用程序 其主要功能取决于发送短信 在我开发 android native 之前 但现在我使用 React Native 来为 IOS 和 Android 制作它 在 Android 中 如果获得用户许可 可以在后台发送短信 但
  • 如何使用 jQuery 在第二次单击时反转 CSS 动画

    我制作了以下菜单图标 CSS 动画 当我点击它时会触发它 当我使用 jQuery 第二次单击它时 我想使其反向动画 path1 stroke dasharray 33px stroke dashoffset 33px animation l
  • 工作表关闭后 SwiftUI 导航栏项目框架未对齐

    在 SwiftUI 中关闭工作表后 导航栏按钮不可点击 以下是重现该问题的步骤 出示一张单子 将应用程序移至后台一小段时间 2 秒 恢复应用程序并向下滑动关闭工作表 现在导航栏按钮框架未对齐 点击的工作框架与按钮的可见框架不同 这在 iOS
  • 如果部署目标 < 基础 sdk,如何检查是否使用了不可用的方法?

    我想知道当部署目标低于基础 SDK 时 您如何检查代码是否不调用不可用的方法 可以在 SDK 等于部署目标的设备上运行应用程序 但我搜索一种更 自动 的方式 任何想法 问候 昆汀 最简单的方法是使用 IPHONE OS VERSION MA
  • 为什么使用自动布局时视图的框架宽度始终为 600 x 600

    我正在制作一个基本的扫雷应用程序 用于快速练习 娱乐 我想让板的尺寸 10 个图块宽 适应任何 iOS 屏幕 为此 我通过获取tileContainer view frame width和 10来设置每个图块的大小 我的问题是 tileCo
  • XCODE:如何从设备获取/验证准确的时间戳

    在没有互联网连接的情况下是否可以获得 NTP 或准确的时间戳 我不能接受 不信任带有 NSDate date 的设备时间戳 因为它可以由用户修改 并且我的应用程序将通过修改系统日期和时间而被黑客攻击 除此之外 是否有任何方法可以检查系统日期
  • NSURLSessionDownloadTask 出现存储几乎已满磁盘警告的问题

    我在使用 NSURLSessionDownloadTask 处理 ios 上的 空间不足 磁盘已满 错误时遇到问题 如果由于应用程序中完成下载而导致磁盘已满 我会接到电话 URLSession 会话 NSURLSession 任务 NSUR
  • 如何安全地将 CGFloat 降低或提高到 int?

    我经常需要在地板或天花板上安装CGFloat to an int 用于计算数组索引 我永远看到的问题floorf theCGFloat or ceilf theCGFloat 是浮点不准确可能会带来麻烦 那如果我的CGFloat is 2
  • 如何在WKInterfaceLabel下面放置一个WKInterfaceLabel?

    大家好 我在 watchkit 开发中有新的东西 我有特殊要求 我将一个 WKInterfaceLabel 安排在另一个 WKInterfaceLabel 下面 我尝试使用很多关闭选项 例如编辑位置 但 WKInterfaceLabel 未
  • 使用 twitterkit 将图像发布到 Twitter

    我正在尝试使用 Twitter 的新 TwitterKit 和自定义 UI 发布图像和推文 他们提供的唯一文档是如何用他们的观点来做这件事 所以我可以弄清楚如何在没有图像的情况下做到这一点 NSMutableDictionary messa
  • Xcode 找不到我的静态库!

    这是链接器错误 i686 apple darwin10 gcc 4 2 1 Users william Documents SettingsLibrary build Debug iphonesimulator libSettingsLib
  • cocos2d 2.0-rc2:结束director并重新启动

    我有一款由 cocos2d 驱动的游戏 它使用 UIKit 菜单 所以我只使用一个视图控制器的框架 即游戏本身 而且 它只有一个场景 从cocos2d 2 0开始 director本身就是一个UIViewController子类 所以我只是

随机推荐

  • Scrum 故事和幕后特色 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 据我了解 Scrum 待办事项由一系列代表最终用户的故事组成 并进一步分解为功能 如果是这样的话 所有与故事没有真正联系但仍然有用的幕后功
  • PyQt4、QThread 和打开大文件而不冻结 GUI

    我想问如何从磁盘读取大文件并保持 PyQt4 UI 响应 不阻塞 我已将文件的负载移至 QThread 子类 但我的 GUI 线程被冻结 有什么建议么 我想这一定是GIL的问题 但我不知道如何排序 编辑 我正在使用 GDCM 项目中的 vt
  • HBase如何实现对HDFS的随机访问?

    鉴于HBase是一个数据库 其文件存储在HDFS中 那么它如何实现对HDFS中单个数据的随机访问呢 这是通过什么方法实现的呢 From Apache HBase 参考指南 http hbase apache org book archite
  • 事件+适配器模式

    我在泛型类上有一个适配器模式 它本质上在类型之间进行适应 class A
  • 如何在我的 Swift 项目中使用 Objective-C 项目

    注 我知道如何从 Swift 调用 Objective C 代码 https stackoverflow com q 24002369 6521116 但我不知道下面 我想用这个EsptouchForIOS的演示 https github
  • @AutoConfigureAfter 未按预期工作

    我有 3 个 spring boot starter 项目 其中一个自动配置类具有以下代码 Configuration ConditionalOnClass value Config class AutoConfigureAfter val
  • SQL查询结果需要返回WHERE子句中的所有记录,甚至重复

    我是 Microsoft SQL Server 的新手 需要一个查询来返回 WHERE 子句中列出的所有记录 甚至是重复的记录 我所拥有的只会返回 3 行 我正在使用 C 读入并解析文本文件 使用该文本文件 我创建一个查询以从数据库获取结果
  • Xcode:多人共享相同的 Bundle ID

    我正在和朋友一起开发 iOS 应用程序 我们都以个人身份报名参加了 Apple 开发计划 我们没有组织 我们正在使用 git 并且希望能够从 Mac 构建应用程序 但我无法编译 因为 Bundle ID 已被我的朋友使用 是否有可能在不成为
  • 将数据库文件从文件资源管理器中的 /assets 复制到 /data/data 文件夹 - Android

    我在文件资源管理器中将数据库文件从 assets 复制到 data data 文件夹时遇到问题 我搜索了这个网站 找到了很多答案 但找不到适合我的情况的适当答案 我已经使用 SQLite Manager 在外部创建了数据库并将其导入到资产文
  • 在 R 中的 DT::datatable 中包含表容器

    我是 HTML 和交互式表格的新手 并且在构建表格容器来为我的数据集添加标题时遇到了麻烦 有没有一种简单的方法可以为我的数据集插入表头 我希望第 2 5 列 不包括第 1 列中的日期 和第 6 9 列分别具有标题 部门 和 行业 我在下面包
  • 如何使用 scala 2.12 重建 apache Livy

    我正在使用 Spark 3 1 1 它使用 Scala 2 12 以及从下载的预构建 Livyhere https livy incubator apache org download 使用 Scala 2 11 可以找到名为repl 2
  • 即使速度非常低,物体也会立即移动到新位置

    我想将一个对象缓慢地从其原始位置移动到稍高的位置 但此代码会立即将对象移动到最高位置 即使我使用非常慢的速度 如 0 0001f 我在另一个代码中仅调用 LiftObj 1 次 并告诉它运行直到达到 liftOffset 这段代码有什么问题
  • Java 指令重新排序示例不起作用

    我需要一些帮助 我正在尝试创建一个示例 表明需要 volatility 来防止指令重新排序 在这个例子中 我试图证明 b gt a 仅当发生重新排序时才发生 并且 volatile 会阻止它 问题是 每次运行我都会得到 b gt a 而且我
  • React-pdf 图像不渲染

    我一直在尝试将图像添加到react pdf PDF文档中 但是 无论我做什么 图像都不会显示在 PDF 中 除了一些非常具体的图像 由于某种原因 我发现其他人也有同样的问题 但没有解决方案或解决方法 任何帮助将不胜感激 这是我使用的代码 使
  • 为什么 YouTube api 搜索从不同的服务器返回不同的结果?

    我们注意到从返回的搜索结果v3 搜索 API https developers google com youtube v3 docs search list根据服务器位置的不同而有所不同 我已经确认代码是完全相同的 当我使用 api 文档网
  • PHP excel - 数据循环?

    我有一个数据数组的数组 所以基本格式是 sheet array array a1 data b1 data c1 data d1 data array a2 data b2 data c2 data d2 data array a3 dat
  • prometheus/client_python:如何在不重新启动的情况下分配新注册表?

    我编写了一个小脚本来检测 Flask 应用程序 我想编写单元测试 其中每个测试都可以针对模拟 Flask 应用程序编写请求并测试指标 而无需处理来自以前测试方法的指标 请求 如下所示 def test grouped codes app c
  • 将 hdf5 库(java 和 c++)添加到公共 Maven 存储库?

    是否有一个公共 Maven 存储库 我或其他人可以在其中放置 HDF java 和 HDF C 库 我没有 Maven 存储库 并且我不想自己为这些 3rd 方库设置一个存储库 肯定有更多人使用 HDF 库并希望将它们用作 Maven 项目
  • 类型“()”不能符合“View”;只有 struct/enum/class 类型可以符合协议

    我目前正在学习 swift 我试图制作一个简单的应用程序来显示您是否已连接到互联网 但我不断收到以下错误 类型 不能符合 View 只有 struct enum class 类型可以符合协议 这是代码 struct ContentView
  • 在 UIScrollView 中滚动时动画停止

    因此 我试图制作一款游戏 用户必须尽可能快地向下滚动 才能逃脱无限增大的 块 这是我的问题 我使用 UI ScrollView 作为滚动机制 并以普通 UI 视图作为子视图 我设置了每 0 005 秒触发一次 这会增加 块 的高度和滚动视图