问题标签 [cakeyframeanimation]

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 回答
2256 浏览

ios - 使用 UIImages 的 CAKeyframeAnimation 不起作用

我正在这样设置动画:

然后这样称呼它:

但什么都没有显示。

我看过其他几篇关于 kCAAnimationDiscrete 的 Stack 帖子需要第一个时间为 0.0f,如您所见。

请指教?

0 投票
1 回答
763 浏览

ios - 如何将 UILabel 文本中的更改与相关动画同步?

我使用 CAKeyframeAnimation 制作了一个水杯从空到满的动画。动画效果很好。

我需要用与玻璃的饱满度相对应的百分比来更新 UILabel,即动画开始时它会显示“0%”,结束时会显示“100%”。

关键帧动画运行 5 秒。我看不到更新此标签的好方法。我可以想到两个选择:

  1. 启动另一个线程并运行轮询类型的循环,以处理能力为代价更新文本。
  2. 将动画分解为 100 个部分并使用 CABasicAnimation 更新文本,然后继续下一段玻璃动画。

有一个更好的方法吗?

提前致谢

0 投票
4 回答
3150 浏览

ios - CAKeyframeAnimation : 停止时内容变回第一张图片

CALayer我使用以下代码为 a 的内容设置动画:

并且想在动画停止时隐藏图层:

问题是该层与原始图像(编号3)一起闪烁一次,然后隐藏。

我想知道为什么即使我设置removedOnCompletionNO.

0 投票
2 回答
901 浏览

ios - 用于 CAKeyFramAnimation 的 CGImageCreateWithImageInRect 的内存管理

我正在使用 CAKeyFrameAnimation 为几个 png 图像设置动画。我通过使用从一个 png 图像中剪切它们CGImageCreateWithImageInRect

当我在 XCode 中运行分析函数时,它显示了潜在的内存泄漏。他们是因为CGImageCreateWithImageInRect. 但是当我在创建动画对象后使用 CGImageRelease 时,没有显示图像(我知道为什么,但是当我不使用 release 时,会出现泄漏)。

有人可以解释一下这个内存问题的情况吗?什么是最好的解决方案?我正在考虑为每个“剪辑”创建带有 CGImageRefs 的 UIImages。但是 CAKeyFrameAnimation 使用 CGImageRef 的字段,所以我认为没有必要创建那个 UIImages。

0 投票
1 回答
2299 浏览

iphone - 逐渐减小 CAShapeLayer wrt 半径

在此处输入图像描述

我有一个 UIImageView 和上面的图像,所以我要做的是逐渐减少和增加图像的形状。

为了完成上述任务,显然我必须应用蒙版,所以我创建了一个圆形 CAShapeLayer 并添加到 UIImageView 层,如果我改变我的半径,它工作正常,它只会显示那个数量的图像 wrt 半径。

我的问题是我们如何应用动画,以便它以动画形式显示。请指导我,我无法用关键帧动画实现。

以下是屏蔽 wrt 半径的代码。

其中 123.5 是图像的最大半径, originalImageView 是 myUIImageView

0 投票
0 回答
1701 浏览

ios - 在 iOS 中暂停和播放 CAKeyFrameAnimation

我正在使用 CAkeyframeanimation 为 calayer 制作动画。实际上,我正在使用 CAkeyframeanimation 使用 position 属性移动 calayer。我想暂停 calayer 移动动画。当我点击屏幕时,它应该从暂停的地方恢复。

我为 calayer 添加了两个动画。一个是用于更改 calayer 的边界属性,另一个是位置属性。所以我为单个 calayer 使用两个动画,但我想暂停 calayer 的位置属性动画,我点击屏幕。在我点击后,它应该从暂停的位置恢复。

我使用了以下代码,但它停止了我应用于 calayer 的所有动画。

我还尝试了 CAanimtion 的删除动画属性。它有效!但我无法从暂停的位置恢复动画。

请帮我。

提前致谢。

0 投票
1 回答
525 浏览

iphone - 如何为嵌入在 UITableViewCell 中的 UIView 设置动画

didSelectRowAtIndexPath,我正在重新加载选定的行并进行更改heightForRowAtIndexPath,以便选定的 tableview 单元格可以展开。这工作正常。因此,一旦重新加载扩展完成,我必须为 UIImageView 后面的 UIView 设置动画。

动画应该像从 imageView 后面进来一样,像从图像中显示一样停在某个位置。应该很简单吧?通过更改 y 原点并在其中执行动画块。

但问题是它根本没有使用简单的 UIView beginAnimations 代码进行动画处理。我认为应该可以将 CAKeyframeAnimation 应用于 UIView 层。

我从来没有玩过图层。有人可以指导我吗?

谢谢

0 投票
3 回答
1716 浏览

ios - 在 CAKeyframeAnimation 之后 UIButton 没有收到触摸

我的情况:我有一个UIButton动画,它CAKeyframeAnimation被声明为一个类别UIView

问题是在动画之后,按钮没有收到触摸。如果我删除动画一切正常。有谁知道我做错了什么?

谢谢

0 投票
1 回答
407 浏览

ios - 曲线动画旋转方向?

在我的应用程序中,我使用以下动画使我的 UIElement 沿着顺时针方向的圆形路径

radianOf是将角度转换为弧度的函数(只返回 M_PI*(angle/180) 的值)

但问题是 UIElement 正在逆时针方向旋转。我在我的代码中找不到错误,请帮助我。

0 投票
0 回答
348 浏览

ios - 动态修改 CAKeyframeAnimation 的持续时间

在我的代码中,我创建了一个具有无限重复计数的 CAKeyframeanimation,将其添加到特定的 CALayer。我想在制作动画时修改动画的持续时间(= 速度),而无需重新启动动画。所以当我点击一个按钮时,我会得到一个可以为动画设置的持续时间。我必须删除动画,创建另一个动画,然后让它从我停止的地方开始。问题是我似乎无法从那一点重新启动它,而不让它从那一点开始循环。如果它是一个旋转,它不会有问题,但我使用翻译。


所以,我有 3 个点,A,然后是 B,然后是 C,在一条直线上。我的翻译从 A 到 C,经过 B,并无限重复。当我更改持续时间时,在 B 点,我只能重新创建从 B 到 C 的平移动画(这不好),或者,我可以使用新的持续时间重新创建从 A 到 C 的动画,但它从 A 点重新开始(这也不好)。你知道我怎么能做我想做的事吗?谢谢