iphone - 使单元格 imageView 飞入动画

标签 iphone ios xcode cocoa-touch

如何让我的单元格的 imageView 属性一个一个地飞起来?

我现在可以让它们飞进来,但只能一次。

做这样的事情对性能有好处吗?

谢谢!

最佳答案

使用 indexPath.row 计算延迟。

float animationDelay = 0.2f;
[UIView animateWithDuration:0.3f 
                      delay:animationDelay * indexPath.row 
                    options:0 
                 animations:^{
            cell.imageView.transform = CGAffineTransformMakeScale(1.0f, 1.0f);
        }  completion:^{}];

这将使每一行相对于其上方的行延迟 0.2 秒。当然这只会在您最初加载表格时起作用,但我想这就是您要制作动画的内容?当您开始滚动并加载新单元格时,您可能应该将延迟设置为零。否则图像将需要一段时间才能显示。

为了实现这一点,我建议引入一个名为 loadingTheFirstTimeBOOL ivar,它最初设置为 YES(在 initawakeFromNib 方法)。然后,您可以在表格第一次显示时将其设置为 NO。创建单元格时,您应该首先检查此变量以查看是否必须添加延迟。

关于iphone - 使单元格 imageView 飞入动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12409257/

相关文章:

iphone - 将 UISlider 用于离散值可能是滥用和被应用商店拒绝的原因吗?

ios - "The private key for ... is not installed on this Mac"– Xcode 中的分发和配置文件

swift - 无法访问公共(public)枚举 Swift 4.2

ios - iOS 上 Google 登录的随机引用错误

iphone - 将音频录制到 NSData

javascript - Nativescript ios - 命令 xcodebuild 失败,退出代码为空

ios - 扫描二维码后如何打开URL?

ios - 我可以调试从 IPA 存档安装的 iOS 应用程序吗?

json - Swift 中 JSON 对象中的错误排序项(字段)

iphone - 解散到 RootViewController?