重复 UIAnimation 块,以及再次停止它的方法

2023-12-19

我想做一个小的加载器动画来放入我的应用程序中。我之前用 CGAnimations 做过重复动画,没有任何问题,这次我采用块方法。

我正在做一个小测试,但可以重复以下代码:

- (void) startLoading {

    __block int count = 0;

    [UIView animateWithDuration:0.4
                          delay: 0.0
                        options: UIViewAnimationOptionRepeat
                     animations:^{
                         count++;
                     }
                     completion:^(BOOL finished){

                         if (count > 5)
                             count = 0;
                         NSLog(@"%d", count);

                     }];

}

- (void) stopLoading {

}

上面只触发完成块一次,不会重复。

如何让块重复以便计数递增?

如果我让它工作并将我的动画放入重复块中,stopLoading: 会再次停止动画吗?

感谢您提供的任何帮助:)


这是一个有限重复的动画:

- (void) animate: (int) count {
    CGPoint origC = v.center;
    void (^anim) (void) = ^{
        v.center = CGPointMake(100,100);
    };    
    void (^after) (BOOL) = ^(BOOL finished) {
        v.center = origC;
        if (count)
            [self animate:count-1];
    };
    int opts = UIViewAnimationOptionAutoreverse;
    [UIView animateWithDuration:1 delay:0 options:opts 
                     animations:anim completion:after];
}

这里有一个递归,所以我们不想过度,否则我们会耗尽内存,但如果我们限制计数(在你的例子中是 5),我们应该没问题。

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

重复 UIAnimation 块,以及再次停止它的方法 的相关文章

  • 在 cocoa touch 中以编程方式将视图位置设置为右上角

    我需要确保一个视图 A 尺寸 200x200 始终与第二个视图 B 全屏尺寸 内的右上角对齐 我想确保无论设备方向如何 视图 A 都保留在该位置 事实是 当使用界面生成器来定位视图时 我对此没有任何问题 但我需要以编程方式构建它 我想我应该
  • 我在代码和 Interface Builder 之间建立连接时遇到问题

    我在使用 iPhone SDK 时遇到了一个特殊问题 我尝试在我的开发计算机上运行来自不同来源的多个教程 问题似乎总是在于将代码连接到 Interface Builder 中的视图 如果我有一个按钮或数据字段 或其他一些库函数 并且我在vi
  • 在 iPhone 中保存会话数据

    我想将数据存储在应用程序中的不同点 以便应用程序中的对象可以访问这些数据 类似于 php 中的 session 或全局变量 我知道我可以使用 NSUserDefaults 但我不确定如何继续向它添加值然后访问它 例如 首先我想存储登录期间使
  • 如何制作带边框的半圆角(顶角圆角)文本视图?

    How to make a half rounded Top corner rounded textview or tableview with the borderwidth and borderColor 这并不完美 但你可以这样做 i
  • 如何停止覆盖数据

    我正在尝试在我的 iOS 应用程序中保存一些数据 我使用以下代码 NSArray paths NSSearchPathForDirectoriesInDomains NSDocumentDirectory NSUserDomainMask
  • 如何重置(即取消缩放)UIScrollView?

    我有一个 UIScrollView 其中包含图像和分段控件 该控件允许用户在 ScrollView 内切换图像 如果我只是将图像交换到 UIImageView 内部 它将以放大状态显示新图像 如何将 UIScrollView 重置回未放大状
  • iOS 上有像 JUNG 这样的可视化框架吗?

    有没有类似的可视化框架JUNG http jung sourceforge net applet index html对于iOS 我想实现类似的东西this http prefuse org gallery graphview iOS 上最
  • 以编程方式缩放 UIWebView,无需手势 - 中心点计算不正确

    问题 我的 iPad 应用程序中有一个 UIWebView 我需要以编程方式缩放它 但不使用手势 点击 该应用程序 有一个 和一个 按钮 用于以用户定义的增量放大和缩小 这是一个针对视障人士的应用程序 以前 当我的应用程序运行时 此 缩放按
  • UIActionSheet 按钮的颜色

    如何更改 UIActionSheet 按钮的颜色 iOS 8 UIAlertController 如果您使用 UIAlertController 这非常简单 只需更改 UIAlertController 视图上的色调颜色即可 alertCo
  • iPhone 旋转时 CALayer 自动旋转

    我有一个 UIViewController 其中我将 CALayer 子类添加到视图层 self view layer addSublayer myObject backgroundLayer 当我旋转设备时 视图会旋转 但 CALayer
  • Core Data 与 Sqlite 以及性能

    我想知道是否有人有关于已在 3 0 SDK 中转换为 Core Data 的旧 sqlite 应用程序之间的性能差异的真实数据 我怀疑核心数据在底层只是使用 sqlite 并且为了方便成本而增加了一些开销 但我想我还是会问 Core Dat
  • 在 Facebook 墙上添加照片

    void postToWall FBStreamDialog dialog FBStreamDialog alloc init autorelease dialog userMessagePrompt NSString stringWith
  • 如何在 iPhone 窗口应用程序中显示另一个窗口

    首先 我是 Objective C 和 iPhone 编程的新手 有事我无法去上班 我有一个 iPhone 窗口应用程序 在主窗口中有一个按钮 我想在单击按钮时显示另一个窗口 我已将事件与我的控制器绑定 我只是不知道如何在事件中显示我的另一
  • 在 Xcode 4.2 中启用崩溃日志符号

    我使用的是 Xcode 4 2 我的崩溃日志没有被符号化 如何在 Xcode 4 2 中启用此功能 请浏览苹果的文档 http developer apple com library ios technotes tn2151 index h
  • UITableViewCell 上的 textLabel.backgroundColor 不起作用

    我正在尝试设置 UITableViewCells 的标签背景颜色 但它根本不执行任何操作 我想知道是否还有其他方法可以做到这一点 所以我问 我试过这个 cell textLabel backgroundColor UIColor redCo
  • 4.4 中新的 Objective-c 文字

    我可以写 42 这会创建一个NSNumber with int值 42 我可以用变量来做到这一点 例如 someIntVar 显然我尝试过但它不起作用 这很糟糕 因为然后我必须经历 NSNumber numberWithInt someIn
  • 如何执行 UIAlertAction 的处理程序?

    我正在尝试编写一个帮助程序类以允许我们的应用程序支持两者UIAlertAction and UIAlertView 然而 当写alertView clickedButtonAtIndex 方法为UIAlertViewDelegate 我遇到
  • 在 UITableviewCell 高度动画的同时动画 CALayer 阴影

    我有一个 UITableView 我正在尝试使用它来展开和折叠beginUpdates and endUpdates方法并在发生时显示阴影 在我的自定义 UITableViewCell 中 我有一个图层 我为其创建阴影layoutSubvi
  • 从 Plist 中存储和检索 [重复]

    这个问题在这里已经有答案了 可能的重复 iOS 在 plist 文件中存储两个 NSMutableArray https stackoverflow com questions 6070568 ios store two nsmutable
  • 如何使用 ZBar 读取器的 scanCrop 属性?

    我正在使用 iPhone 的 ZBar SDK 来扫描条形码 我希望阅读器仅扫描特定的矩形而不是整个视图 为此需要将阅读器的 scanCrop 属性设置为所需的矩形 我很难理解必须设置的矩形参数 有人可以告诉我如果在纵向视图上它的坐标是 我

随机推荐

  • Go gin 获取请求体 json

    我使用邮递员发布数据并在正文中放置一些简单的 json 请求正文 order 1 Name ts1 我需要将数据传输到 json 我尝试如下 我无法获取 json 不知道缺少什么 router POST user func c gin Co
  • CSS 动画 - 为一个又一个元素设置动画

    我想要为一个元素设置动画 然后再为另一个元素设置动画 这可以用 CSS 实现吗 我似乎无法让它工作here http jsbin com licapepose 1 edit html css output到目前为止我的尝试 我有两个主要问题
  • PHP中如何检查字符串是否可以用作变量名?

    在 PHP 中可以使用可变变量 例如 class obj fieldName Surname object new obj object gt Name John object gt fieldName Doe echo object gt
  • 尝试使用 maven 编译 JavaFX 项目时断言失败

    我正在开发一个 javaFX 项目 我想使用 maven 在终端中编译它 但我无法让它工作 它在 IntelliJ 中编译得很好 但当我在终端中时却编译不好 我正在使用编译脚本来运行它 我使用的是 M2 MacBook Air 这是我的 J
  • 奇怪的 Linq 错误

    我正在使用 Linq 将任何对象的数组转换为 CSV 列表 String Join From item In objectArray Select item ToString ToArray 这给了我一个奇怪的错误 范围变量名称不能与 Ob
  • 如何在IOS中制作慢动作视频

    我要做 慢动作 在视频文件和音频中 在一些帧之间 需要store将渐变视频作为新视频 Ref http www youtube com watch v BJ3 xMGzauk http www youtube com watch v BJ3
  • 如何使用 jquery 在 bootstrap 中激活导航栏

    我想让导航栏在我单击时处于活动状态 这是我使用的jquery document ready function navbar li click function e navbar li removeClass active var this
  • 如何使用 Python 和 OpenCV 从左到右、从上到下对轮廓进行排序

    我正在寻找带有数字和字符的图像的轮廓 用于 OCR 因此 我需要将轮廓从左到右排序 同时逐行排序 即从上到下 现在 轮廓不是这样排序的 例如 上面图像的轮廓是随机排序的 我需要的是排序为 D o y o u k n o w s o m e
  • android - FileProvider - 名称不能为空

    我的清单中有以下 FileProvider
  • 使用 BATCH 脚本检查目录中是否存在任何类型的文件

    您好 我正在编写一个批处理文件来检查给定文件夹内是否有任何类型的文件 到目前为止我已经尝试过以下方法 if EXIST FOLDERNAME echo Files Exist ELSE echo Empty 如果我知道文件扩展名 例如带有以
  • 正确使用AddClipboardFormatListener并订阅WM_CLIPBOARDUPDATE消息

    我当前正在尝试在我的应用程序中使用 Windows 剪贴板及其通知 具体来说 我正在尝试订阅WM CLIPBOARDUPDATE https learn microsoft com en us windows win32 dataxchg
  • 使用默认值python设置字典的缺失值

    我有一个 defaultdict list 和其他普通字典 A 1 blah nire 2 fooblah 3 blahblah B 1 something 2 somethingsomething 现在假设我有这样的东西 missing
  • 如何从命令行关闭 Rserve

    这个问题涉及到紧密联系 https stackoverflow com questions 23264328 connection of java and r with rserve或许也与此有关关闭预订 https stackoverfl
  • 在 mac osx 上启动应用程序的多个进程

    我在 mac osx 10 9 上使用 python 2 7 来创建应用程序 该应用程序将文件名作为参数 然后打开文件 并继续监视文件的更改 直到文件关闭 对于单个文件来说它工作得很好 我使用 py2app 和 platypus 将 pyt
  • PHP/Angularjs/发布数据为空

    我确实选择了两个字段 month and origin 以表格形式提交给AngularJS控制器 我使用的是与 Ionic 框架打包的 1 3 13 版本 观看一个console log inside then方法值已正确填充 The q
  • 在 Amazon EC2 上构建 gRPC 服务器

    当我尝试在 Amazon EC2 实例上构建 gRPC 服务器 客户端时遇到问题 我有一个实例 A 具有私有 ip 例如 1 2 3 4 服务器代码就像 from concurrent import futures import time
  • 没有共享窗口的山狮上的 NSSharingService

    在山狮上 我尝试使用 AppKit framework 的 NSSharingService 类来实现新的共享可能性 这种代码一切顺利 NSArray array myText NSImage imageNamed myImageFile
  • 扫描上传的文件 C# ASP.net

    我正在尝试对上传的文件进行病毒扫描 我无法控制已安装的病毒扫描程序 该产品由多方使用不同的扫描程序托管 我尝试了以下库 但它总是在 eicar 文件上返回 VirusNotFound https antivirusscanner codep
  • 如何设置MigraDoc的页面大小?

    抱歉 我只是 PDFsharp 的初学者 如何设置文档的PageSize 就说A4吧 怎么设置呢 这是我的代码 谢谢 Document document new Document Add a section to the document
  • 重复 UIAnimation 块,以及再次停止它的方法

    我想做一个小的加载器动画来放入我的应用程序中 我之前用 CGAnimations 做过重复动画 没有任何问题 这次我采用块方法 我正在做一个小测试 但可以重复以下代码 void startLoading block int count 0