gpt4 book ai didi

cocoa :CATransaction 和 NSAnimationContext 有什么不同

转载 作者:行者123 更新时间:2023-12-03 16:52:38 27 4
gpt4 key购买 nike

我可以使用代码动画地移动图层托管 View :

[CATransaction setAnimationDuration:2];
self.imageLayer.position = CGPointMake(0, 0);

我也可以通过以下代码来做到这一点:

 [NSAnimationContext runAnimationGroup:^(NSAnimationContext *context) {
[context setDuration:2];
self.imageLayer.position = CGPointMake(0, 0);
} completionHandler:nil];

我想知道 CATransaction 和 NSAnimationContext 之间有什么区别,我应该使用哪一个来动画 View ?为什么我可以在 NSAnimationContext 和 CATransaction 中设置持续时间?

最佳答案

CATransaction 适用于核心动画层动画。 CATransaction 是 iOS 和 Mac OS 之间的跨平台。

NSAnimationContext 与 NSAnimationContext 一起使用。这是 Mac 操作系统特定的。

(NS 动画内容仅适用于 Mac,UIView 动画内容仅适用于 iOS。)

这些天我在 iOS 上工作的时间比在 Mac OS 上工作的时间多,而且我总是在寻找跨平台的工作方式。

CAAnimation、CALayer、CAAnimationGroup 等在 Mac 和 iOS 之间几乎相同。存在一些差异(例如,iOS 中不支持 Quicktime 层,iOS 中的 Core Image 支持更有限,等等),但 CA 的内容更多的是相似而不是不同。

关于 cocoa :CATransaction 和 NSAnimationContext 有什么不同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12355371/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com