我正在为CALayer分的动画概念化而苦苦挣扎,而不是UIView's个自己的动画方法.加上"Core Animation",也许有人可以从更高的层面阐述这些概念,这样我就可以更好地可视化正在发生的事情,以及为什么我会想要将UIView动画(我现在非常熟悉)迁移到iPhone上的CALayer动画.Cocoa-Touch中的每个视图都会自动获得一个层.而且,看起来你可以制作and/or the other?!?的动画,甚至可以把它们混合在一起?!?但是为什么呢?队伍在哪里?每个人的优势和劣势是什么?

核心动画编程指南立即进入Layer&计时课程,我认为需要退一步,了解为什么会有这些不同的片段存在,以及它们之间是如何关联的.

推荐答案

用视图来控制,用图层来吸引眼球.层不接收事件,因此在这些情况下使用视图更容易,但是当您想要为精灵或背景等设置动画时,层是有意义的.事件直接通过层传递到后台视图,因此您可以有一个非常直观的表示,而不会弄乱您的事件.try 覆盖仅用于可视化表示的视图,您必须亲自将点击事件传递给底层视图.

Ios相关问答推荐

Flutter WebRTC:GetUserMedia()不适用于Safari和IOS设备

Nomb iOS 17.4.0中崩溃

SwiftUI拖动手势和内容拖动时的奇怪行为( skip /卡顿)

带有RadStudio 11.3/12的Mac Mini M2(Sonoma 14.2.1)上的PAServer-测试连接按钮有效,但部署不起作用

从包含 5 个以上项目的自定义选项卡栏的导航视图中删除更多按钮

如何在Swift/Combine中从timer.publish属性传递两个参数到任意方法

一对多关系 Firebase 实时数据库(嵌入数百万条 comments )

SwiftUI 中的偏移量和按钮有问题吗?

我可以使用同一个 Firebase 应用将多个 Flutter 应用添加到一个 Firebase 数据库吗?

为什么我的应用在 Testflight 中没有下载 dSYM 按钮?

UILabel - 字符串作为文本和链接

在 Swift 中按下返回键时在文本字段之间切换

UICollectionView - 动态单元格高度?

在 Swift 中将 HTML 转换为纯文本

自动布局:是什么创建了名为 UIView-Encapsulated-Layout-Width & Height 的约束?

UINavigationBar - 以编程方式设置标题?

如何在 iphone 屏幕中间显示活动指示器?

Xcode 6 进程启动失败:try 启动应用程序超时

iOS 7 应用程序图标、启动图像和命名约定,同时保留 iOS 6 图标

为什么我需要@1x、@2x 和@3x iOS 图像?