8

我试图在 imageView 被触摸时创建类似波纹的效果,但是我不明白如何为 windows 实现 OpenGL 并将其移植到 iOS。我曾尝试使用http://www.codeproject.com/KB/openGL/dsaqua.aspx以及 cocos2d,但我发现后者完全令人困惑。有人愿意提供一些建议或可以指出我正确的方向吗?

非常感谢!

4

5 回答 5

48

如果你想在视图上产生涟漪效果,你可以使用它。

    CATransition *animation = [CATransition animation];
[animation setDelegate:self];
[animation setDuration:2.0f];
[animation setTimingFunction:UIViewAnimationCurveEaseInOut];
[animation setType:@"rippleEffect" ];
[myView.layer addAnimation:animation forKey:NULL];
于 2011-05-12T05:37:36.100 回答
7

在 iPhone 中使用下面的涟漪效果

[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0];
[UIView setAnimationTransition:(UIViewAnimationTransition) 110 forView:view cache:NO];
[UIView commitAnimations];

有关更多效果,您可以查看此链接:

http://www.iphonedevwiki.net/index.php?title=UIViewAnimationState

于 2011-05-12T05:40:04.327 回答
6

@Rony 在 Swift 中的 CATransition Ripple

let animation = CATransition()
animation.delegate = self
animation.duration = 2
animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionEaseInEaseOut)
animation.type = "rippleEffect"
myView.layer.addAnimation(animation, forKey: nil)

(这是我的第一篇文章,如果我做对了,那就别想了:D)

于 2016-03-04T16:58:44.780 回答
3

对于 Swift 3.0

let animation = CATransition()
animation.delegate = self
animation.duration = 5.0
animation.timingFunction = CAMediaTimingFunction(name : kCAMediaTimingFunctionEaseInEaseOut)
animation.type = "rippleEffect"
viewForAnimation.layer.add(animation, forKey: nil)
于 2016-10-13T07:37:44.063 回答
1

我已经尝试过上述代码,但没有一个能完美运行。找出以下源代码。 https://github.com/willstepp/gl_image_ripple

于 2014-10-27T15:35:31.540 回答