- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想制作一个径向渐变动画来缩小和增大内半径,就像它在脉冲一样。
现在我正在使用 CGGradient 渲染渐变,但我不确定如何为其设置动画。我看过这个话题
Can you animate gradients using Quartz in an iPhone?
这解释了如何使用 CAGradientLayer 对线性渐变进行动画处理,但这似乎不会绘制径向渐变。
有没有一种简单的方法来制作 CGGradient 动画,或者创建径向渐变 CAGradientLayer?
任何想法都值得赞赏。
最佳答案
如果手机上只有 Core Image,那么这将是微不足道的。您需要一个可动画过滤器。 ;-)
CAGradientLayer 确实允许对其属性进行动画处理,但是,它目前仅支持线性渐变。
如果您想使用核心动画制作动画,我唯一能想到的就是为您正在绘制渐变的 View 的变换制作动画。
您可以非常简单地为任何 View 的变换设置动画。只需像您可能已经在做的那样在 View 中绘制渐变,然后使用缩放对变换进行动画处理即可。使用显式动画,它会是这样的:
CABasicAnimation *anim = [CABasicAnimation animationWithKeyPath:@"transform"];
[anim setFromValue:[NSValue valueWithCATransform3D:CATransform3DIdentity]];
// Scale x and y up
[anim setToValue:[NSValue valueWithCATransform3D:
CATransform3DMakeScale (1.0f, 1.0f,0.0f)]];
[anim setAutoreverses:YES];
[anim setRepeatCount:HUGE_VALF];
[[gradientView layer] addAnimation:anim];
不幸的是,我认为这看起来像是扩张和收缩而不是脉动(尽管我还没有尝试过)。
我认为,如果您希望此时的渐变具有真正的脉冲,您可能必须使用自己的计时器手动执行动画。只需定期重新绘制并更改内半径值即可。啊。我不确定这是唯一的方法,但我还没有在手机上看到具有您想要的渐变效果的引人注目的脉冲动画。
我想在某个时候尝试另一个想法。核心动画现在允许对任意属性/值进行动画处理。理论上,您可以使用您命名的任意键路径(例如,innerRadius)设置动画并覆盖 -drawLayerInContext 委托(delegate)方法。然后,您可以在演示层处于飞行途中时从演示层获取当前值,并在那里重新绘制渐变。这只是理论上的,因为我还没有尝试过,但似乎值得研究一下。
致以诚挚的问候。
关于iphone - 我可以在 iPhone 中制作径向渐变动画吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3024898/
我正在尝试快速创建一个径向 CAGradientLayer。普通 CAGradientLayers(默认类型 axial)没有问题。它们在模拟器中的快照和运行时呈现良好。 当我拍摄我创建的 UIVie
我想用 CSS 制作一个径向进度指示器,它的中间圆圈是透明的。看这里:http://codepen.io/geedmo/pen/InFfd – 这是我想要做的事情的完美示例,但中间 (.overlay
我已经编写了用于生成网络图的 UI、服务器和 global.r。它适用于一种布局(layout.fruchterman.reingold)。我想要一个用于列出布局的单选按钮(径向、对角线网络和 den
我正在使用 jqwidgets。在那些小部件中,我使用的是径向量规。对于那个径向仪表,我想给出径向背景色。我有一个类似这样的代码,用于更改径向仪表中的背景颜色。 $('#gauge').jqxGaug
有谁知道我可以用来为 iOS 应用程序创建饼图(径向)菜单的库(开源或其他)? 看来现在应该有人想到了这一点,如果没有必要,我不愿意自己动手。 最佳答案 我不久前发现的一个。 http://www
我正在使用 this code为我的数据获取径向 TreeMap 。但是,我想修改它以避免弯曲链接。相反,我对线性直接连接感兴趣。弯曲的链接使插图不那么复杂,特别是当我们的子节点数量较少时。例如,您可
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 8 年前。 Improve this qu
我正在使用 chrome 18.0.1025.162 并尝试进行径向渐变 -webkit-radial-gradient(circle, rgba(100, 100, 100, 0.2), rgba(
我想呈现漂亮的径向树布局,但有点被弯曲的边缘绊倒了。问题是源点和目标点之间的角度不同,边缘的绘制方式也不同。提供的图片来自单个图表,因此您可以看到它们在不同边缘方向上有何不同。我认为关键在于 beiz
我希望我的工具栏使用 Material 设计径向 react 编排指南改变颜色 我想将其实现为 Angular 2 过渡,但我不知 Prop 体该怎么做: 看起来像这样.. @Component({
我目前正在使用以下代码绘制形状; GLfloat vertex = // vertex points glLineWidth(2); glEnableClientState(GL_VERTEX_ARR
我是一名优秀的程序员,十分优秀!