问题标签 [caanimation]

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 投票
1 回答
789 浏览

iphone - 当 CABasicAnimation 正在制作动画时,我该如何回调?

我有一个动画用于将可旋转的 UIView 捕捉到圆形网格。随着视图动画,我需要根据旋转视图位置更新另一个视图。

我怎样才能在旋转视图动画到位时获得它的位置

0 投票
1 回答
2858 浏览

iphone - CAKeyframeAnimation 后 UIImageView 消失

我正在 UIView 的一个类别中尝试此代码(在 SO 的答案中找到),并使用它在嵌套在 UITableViewCell 内的 UIImageView 上执行“弹出”动画。

动画正常工作,但完成后,它消失了。我已经找到了其他人的答案,但显然在这种情况下设置 fillMode 将不起作用。

0 投票
1 回答
646 浏览

cocoa - 具有不同界面元素的 CAAnimationGroup

我想交叉淡入淡出两个NSViews并调整它们的NSWindow. 我知道如何分开做,但到目前为止还不知道如何同时做。我想我需要一个CAAnimationGroup。但是因为我正在处理两个不同的对象,所以我不知道如何在组中添加两个动画,也不知道如何启动动画,因为我不能同时调用animator它们。

0 投票
2 回答
8588 浏览

cocoa-touch - 如何使用 CABasicAnimation 更改 Frame.size

嗨,我已经使用我在下面的代码中使用的 CABasicAnimation 更改了帧大小

但是动画从原点开始并在两侧移动(如动画从中心开始)。

我尝试通过更改 newanim = [CABasicAnimation animationWithKeyPath:@"frame.size"];

它根本不起作用。

0 投票
1 回答
968 浏览

ios - iOS:UIView 动画与 CABasic/CAKeyframe 动画的性能

UIView 动画与 CA 动画块的性能有区别吗?我知道它们都是 Core Animation 的接口,但我希望在每个动画中压缩最大的性能和资源。谢谢。

0 投票
1 回答
540 浏览

iphone - UIView 动画重置为开始

我正在尝试运行动画,以便滚动视图的 contentoffset 不断向下滚动。

但是,每次重复后,它都会从原始位置开始动画,并且不会进行。

有任何想法吗 ?

0 投票
1 回答
1003 浏览

iphone - CAAnimationGroup 与 CAKeyframeAnimation 的优缺点

我目前正在为 iOS 开发一些核心动画内容,并且非常享受自己。这个问题是关于可以实现动画的许多不同方式。假设您想旋转 UIView 几次,但每个动画周期具有不同的计时功能。据我所知,至少有两种不同的实现方式:

  1. 我要么创建一个CAAnimationGroup并将不同的CABasicAnimation对象添加到它。通过控制它们的beginTime属性并对CAMediaTimingFunction它们进行不同的设置,我得到了我想要的个人行为。
  2. 另一种选择是创建一个CAKeyframeAnimation并通过添加不同的键值,我可以单独自定义不同的“框架”。

所以我的问题是:使用这些实现中的任何一个有什么好处吗?

我的后续问题:如果是这样,您使用什么方法来发现这一点?换句话说,我将如何衡量动画的性能?

提前谢谢你和最好的问候。

//Abeansits

0 投票
5 回答
16482 浏览

ios - 如何使用 CAAnimation 制作曲线/圆弧动画?

我有一个删除项目的用户界面,我想模仿 iOS 邮件中的“移动到文件夹”效果。小字母图标被“扔”到文件夹中的效果。我的会被扔进垃圾箱。

我尝试CAAnimation在图层上使用 a 来实现它。据我在文档中可以阅读,我应该能够设置 abyValue和 atoValue并且 CAAnimation 应该插入这些值。我正在寻找一条小曲线,因此该项目通过项目开始位置上方和左侧的一点。

我玩了一段时间,但在我看来苹果意味着线性插值。添加 byValue 不会计算出漂亮的弧线或曲线并通过它为项目设置动画。

我将如何去做这样的动画?

感谢您提供的任何帮助。

0 投票
1 回答
1016 浏览

iphone - 如何使用 CABasicAnimation 水平移动球并将球停在正确的位置

我正在尝试编写游戏,但我对这个动画有点卡住了。我的屏幕上有一个水平动画的球。这是代码:

这很好用。然而我的问题是,当我停止动画时——只需点击屏幕——球在到达正确的位置之前;

首先对 Horizo​​ntalBallAnimation 的“ToValue”进行动画处理。然后,它转到由游戏对象设置的正确值。有人可以帮我解决这个问题吗?

0 投票
2 回答
2562 浏览

iphone - UINavigationController 推送过渡期间的低帧率

我有一个UINavigationController, 并从根视图控制器推送到下一个视图控制器。第二个视图控制器相当“重”,因为它有大量的初始化和子视图。

我的问题是:过渡动画的表现非常糟糕。基本上,动画的帧速率非常低(我从“推送”动画中总共得到 3-4 帧)。

我尝试了各种不同的技术,包括两种不同的手动动画过渡方法。在所有情况下,动画的前 0.4-0.7 秒都会受到这种低帧率的影响。例如,如果我将过渡时间设置为 5 秒,那么前半秒左右的效果会很差,但动画的其余部分却很流畅。

这使我相信在过渡开始时正在发生“某些事情”——导致设备以非常低的帧速率进行动画处理的事情。

在我的代码中注入了大量NSLog语句后,我看到发生了两件事。首先,显然第二个视图在推送期间被延迟加载。我通过在执行推送之前访问 view 属性上的 getter 来解决这个问题。我可以确认这会导致在推送动画开始之前发生所有初始化。

其次,我的应用程序大部分时间在转换过程中都会收到内存不足的警告。然而,即使在我没有收到内存警告的情况下,动画的表现仍然很差——让我相信这些都不是原因。

我的问题:是否有其他人在推送过渡动画中遇到过低帧率UINavigationController,但仅在动画的前 0.4-0.7 秒?幕后是否还有其他事情导致它发生,有什么可以做的吗?

作为参考,这是我当前加载并推送到下一个视图的代码。我有目的地访问视图获取器,以强制视图在转换之前加载和初始化(主要是为了排除这个问题)。此代码在主线程上执行,performSelectorOnMainThread:::以响应 Web 服务回调。

我还尝试了其他一些动画技术,结果都一样:

和: