问题标签 [catransaction]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2679 浏览

ios - 如何减慢 MKMapCamera 的移动速度?

我在 iOS 中编码。

我有一个 NSArray,其中包含一些 MKMapCameras。我想一个接一个地显示数组中的 MKMapCameras。

我放了一个while循环并使用了[self.mapView setCamera:nextCamera animated:YES];

但是,这仅显示第一个和最后一个视图。两者之间的一切都进展得太快了。

我想减慢每个摄像机的移动速度。有没有办法使用 CATransaction 或使用任何其他动画技巧来实现它。如果是这样,你能告诉我一个示例代码吗?

想要更新...我尝试了下面的代码。但它不起作用......正如我之前提到的,相机移动很快。

0 投票
2 回答
71 浏览

objective-c - afterDelay:0 有没有更好的解决方案?

• 我的总体目标

我的目标是

  1. 在基于视图的 Table View 中加载一些数据并执行一些操作(用于 Table View 的显示)
  2. 在加载结束时滚动到表格视图的顶部。

• 更多细节

在加载过程中,会执行很多操作。更准确地说,表格视图是基于视图的,并且在每一行中,都有一个文本视图,其内容绑定到某个属性。实现了委托方法- (void)textDidChange:(必要时放大文本视图)。出于同样的目的,我还NSTextView对方法进行了子类化和覆盖。- (void)setString:

因此,当文本加载到 Table View 的行时,会执行很多操作。

• 编码

我的代码适用于afterDelay:0(滚动到顶部发生)但并非没有。

• 我的问题

我想知道是否有更好的解决方案或解释。我记得一些东西,CATransaction但我不知道它是否可以在这里工作,而且我不记得要调用哪个方法(以及为什么)[CATransaction commit],,[CATransaction commit]

我的问题可能是:我可以用什么替换afterDelay:0,为什么需要它?

谢谢!!

0 投票
1 回答
1272 浏览

ios - 我可以取消 CATransaction 完成块吗?

在 CATransaction 我有以下代码:

动画运行大约半秒。如果类逻辑中发生其他一些事件,我希望能够取消完成块......

有没有办法阻止这个块在动画开始后运行?

0 投票
1 回答
7970 浏览

xcode5 - Xcode:如何设置 CA_DEBUG_TRANSACTIONS=1?

我在调试器的日志窗口中收到此警告:

我必须找出我的什么代码正在调用 CATransaction,这样我才能确保它在主线程上运行。我的代码没有直接调用 CATransaction。即搜索我的 CATransaction 代码没有结果。

在 Xcode 5 中,在环境中设置 CA_DEBUG_TRANSACTIONS=1 的正确方法是什么?

提前感谢所有人提供的任何信息。

0 投票
1 回答
1914 浏览

ios - 在没有 CATransaction begin&commit 的情况下禁用隐式动画

我看到很多人用它来禁用隐式动画:

但是没有 CATransaction begin&commit它也可以工作

像这样它也有效:

所以问题是,为什么我需要使用CATransaction begin&commit?有没有我必须使用它们的情况?

谢谢,阿恩。

0 投票
1 回答
323 浏览

animation - CALayer.opacity 在 CATransaction 内没有动画

我正在尝试CALayer使用 a为 a 的不透明度变化设置动画CATransaction,但它不起作用:

进入此代码的不透明度为 0,没有动画。它会立即更改,尽管在完成块显示消息“正在输入完成块”之前事务确实需要 3 秒,正如预期的那样。我知道这种类型的动画不适用于视图的主层,但这里不是这种情况。

如果您想知道,我使用的是 aCATransaction而不是 a CABasicAnimation,因为 (1) 我发现代码更易于阅读(和编写),并且 (2) 它使用完成块使链接更容易执行(虽然我'这里不这样做)。

是否有一些我不知道的原因使CATransaction这种类型的动画不适合?

0 投票
0 回答
85 浏览

ios - 在 Xcode 中使用 AHEasing 进行动画大小修改

我正在尝试使用WarrenM的 AHEasing https://github.com/warrenm/AHEasing来更改视图大小 我有点对点动画工作,但重新调整大小似乎不起作用。我对使用AHEasing很陌生,所以我不确定自己犯了什么错误。

据我所知,图像“someImage”的大小应该从 调整CGSizeMake(300, 500)CGSizeMake(100, 100),但这些更改被完全忽略了。

任何帮助将不胜感激

这是我正在尝试做的简化版本:

0 投票
0 回答
259 浏览

ios - 同时运行多个 CAKeyframeAnimations

所以我在不同的图层上有 2 个 CAkeyframeanimations,我希望它们同时运行。

以前我尝试使用 dispatch_async 运行它们。但是它没有工作,动画仍在按顺序运行。

经过一番搜索,我发现我必须使用 CATransaction 来同时运行动画。但是它们仍然按顺序运行。我在这里做错了什么。

0 投票
0 回答
386 浏览

ios - 使用锚点和可拉伸图像为 UIView 设置动画

我正在尝试为条形图制作动画,其中图像从底部上升。几个小时后,我发现这不是一件容易的事情。

我只想做一件事:

创建一个从底部中心锚点放大的动画。

UIImageView 动画 CATransaction 动画

** 这些图像是动画期间拍摄的屏幕截图

感谢您的时间。

0 投票
1 回答
1773 浏览

ios - CATransaction 完成块永远不会触发

为什么这个 CATransaction 的完成块永远不会触发?

表格视图动画有效,但从不执行完成块。苹果文档说完成块保证执行。