问题标签 [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 回答
1068 浏览

core-animation - 带有循环的 CAKeyframeAnimation

我正在尝试创建一个有点扭曲的 CAKeyframeAnimation。我希望部分关键帧动画在直接结束之前循环一段时间。例如:

CAKeyframeAnimation 似乎没有提供足够的灵活性,所以我想解决这个问题的唯一方法是提供 3 个不同的关键帧动画。

有没有更好的解决方案?

0 投票
1 回答
1875 浏览

iphone - 使用带有路径的 CAKeyframeAnimation 的间歇性 fillMode=kCAFillModeForwards 错误

当我使用 CAKeyframeAnimation 在屏幕上移动 UIImageView 时遇到间歇性问题。我希望 UIImageView 的位置在动画完成后保持在动画结束的位置。此错误仅发生在某些起点和终点。当我使用随机点时,它大部分时间都能正常工作,但大约 5-15% 的时间它会失败并迅速回到动画前的位置。该问题仅在使用路径属性使用 CAKeyframeAnimation 时出现。如果我使用 values 属性,则不会出现错误。我设置removedOnCompletion = NO,并且fillMode = kCAFillModeForwards。我在下面发布了一个测试 Xcode 的链接。这是我设置动画的代码。我有一个属性 usePath。当这是 YES 时,就会出现错误。当我将 usePath 设置为 NO 时,不会发生回弹错误。

要 dl 并查看我的测试项目 goto test project ( http://www.24x7digital.com/downloads/PathFillModeBug.zip )

点击“移动球”按钮开始球的动画。我已经硬编码了一个起点和终点,这会导致错误每次都发生。使用开关将 usePath 更改为 YES 或 NO。当 usePath 为 YES 时,您将看到 snap back 错误。当 usePath 为 NO 时,您将看不到 snap back 错误。

我正在使用 SDK 3.1.3,但我也看到了使用 SDK 3.0 的这个错误,并且我在 Sim 和我的 iPhone 上看到了这个错误。

任何关于如何解决这个问题或我做错了什么的想法都值得赞赏。谢谢,马克。

0 投票
3 回答
11380 浏览

iphone - CAKeyframeAnimation 完成时如何指定选择器?

我正在使用 CAKeyframeAnimation 沿 CGPath 为视图设置动画。动画完成后,我希望能够调用其他方法来执行其他操作。有没有好的方法来做到这一点?

我已经看过使用 UIView 的 setAnimationDidStopSelector:,但是从文档看来,这似乎只适用于在 UIView 动画块(beginAnimations 和 commitAnimations)中使用时。为了以防万一,我也试了一下,但它似乎不起作用。

这是一些示例代码(这是在自定义 UIView 子类方法中):

我正在考虑的一种解决方法应该可行,但似乎不是最好的方法,是使用 NSObject 的 performSelector:withObject:afterDelay:。只要我将延迟设置为等于动画的持续时间,就应该没问题。

有没有更好的办法?谢谢!

0 投票
1 回答
691 浏览

rotation - 为什么 CAAnimation Rotation 会返回到以前的状态

我正在使用 CAKeyFrameAnimation 来旋转箭头图像。

问题是图像视图在动画后返回到以前的状态。

代码:

CAKeyframeAnimation *rotation = [CAKeyframeAnimation animation]; rotation.duration = 0.55; rotation.cumulative = TRUE; rotation.removedOnCompletion = NO; if (isFlipRight) { rotation.values = [NSArray arrayWithObjects: [NSValue valueWithCATransform3D:CATransform3DMakeRotation(0.0, 0.0f, 1.0f, 0.0f)], [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI, 0.0f, 1.0f, 0.0f)],nil];

} else { rotation.values = [NSArray arrayWithObjects: [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI, 0.0f, 1.0f, 0.0f)], [NSValue valueWithCATransform3D:CATransform3DMakeRotation(0.0, 0.0f, 1.0f, 0.0f)],nil];

}

[[arrowImageView layer] addAnimation:rotation forKey:@"transform"];

0 投票
2 回答
7162 浏览

iphone - iPhone - 如何为 CAKeyframeAnimation 制作圆形路径?

我正在尝试制作一个关键帧动画,让图像视图围绕一个圆圈飞行。我CGPathAddCurveToPoint用来制作关键帧点。问题是图像视图总是使用最短(线性)路线。

我想要某种函数来为给定的半径构建圆形路径。

非常感谢您的帮助。

0 投票
1 回答
7294 浏览

core-animation - CAKeyframeAnimation

嗨,我正在从多个图像创建一个关键帧动画。我的问题是我希望动画立即从一个图像变为下一个图像,而不是淡出。

提前致谢。

0 投票
1 回答
1727 浏览

iphone - 在 iPhone 上使用 CAKeyFrameAnimation 绘制路径

我想逐步绘制路径,即我希望路径看起来好像是手工绘制的。我已经设法创建了我需要的路径。我还设法创建了一个使用此路径的 CAKeyFrameAnimation。但到目前为止,我只能沿着这条路径移动一个对象。我想沿着路径移动一个对象(比如一支铅笔),并让路径看起来好像是绘制的一样。

任何指针?

0 投票
2 回答
1988 浏览

path - 在 Photoshop/Illustrator 中绘制路径,在 iOS 中使用

我正在寻找一种比以编程方式绘制更方便的方式来绘制路径。有什么方法可以在 Photoshop(或 Illustrator)中绘制路径并获取 iPhone 的路径以在 CAKeyframeAnimation 中使用?例如通过导出点数据,或通过导入.ai 文件?

0 投票
2 回答
1251 浏览

iphone - iPhone:在两个不同的图层上同步动画

我需要在两个不同的图层上同步路径动画(一个用作另一个图层的蒙版,另一个显示跟随路径的图形元素,即绘制蒙版)。如果我只是对它们进行相同的设置,它们就永远不会做同样的事情。目前,我正在使用带有路径(用于图形元素)和 CABasicAnimation 的 CAKeyframeAnimation,其中我将同一路径的“strokeEnd”动画从 0.0 到 1.0(用于遮罩)。

我猜动画组在这里不起作用,因为这意味着我将组应用到遮罩层,这将隐藏图形元素。

0 投票
5 回答
11389 浏览

iphone - CAAnimation -1 重复计数?

我怎样才能让我CAKeyframeAnimation有一个永无止境的重复计数?

我试过animation.repeatCount = -1;但它只重复一次。