2010-04-18 98 views
14

我想使用UIView的“吸吮”过渡此处引用(视图“吸”入点):UIView的“吸”动画

http://iphonedevwiki.net/index.php/UIViewAnimationState#Using_suckEffect

以上的方法,但是,使用私有API,这使得它几乎无法用于App Store应用程序。如何在不依赖私有API的情况下重新创建类似的效果?我猜测答案与OpenGL有关,尽管我没有经验。

+3

伟大的问题(我没有答案),但它会是一个伟大的一天,当一些聪明的图形家伙或加仑投入高品质吸/魔鬼和页面卷曲效果的下拉库。在那之前,我相信人们大都只是自己制作(劣质的)伪版本。好的,所以我没有答案,但是您可能需要处理在openGL中渲染某些几何图形的纹理,并对变形进行动画处理。 – 2010-04-19 01:45:30

+0

http://stackoverflow.com/questions/428110/how-can-i-replicate-the-trashing-animation-of-mail-app – kennytm 2010-04-19 08:31:21

+1

@quixoto:是的,这是我计划下去的路径,尽管我仍然无法确定开始前进的方向。 @KennyTM:我的问题略有不同,我不想使用私有API。这仍然是重复的吗? – igul222 2010-04-19 22:02:35

回答

-3

你有没有检出cocos2d框架。它是openGL的一个客观的c包装,并且它做得非常好。您可以查看他们的演示视频,其中显示了该库支持的所有转换类型。

7

只要Apple没有公开记录效果,并且想要避免因使用私有API而被拒绝的风险,则必须自行推出。

建议开始在此工作将使用OpenGL ES着色器。

下面的博客文章包括演示石英作曲家补丁创造神奇效果,如OS X和iOS看出: http://www.aderstedtsoftware.com/users/erik/weblog/c7cb9/

一个良好的开端你的OpenGL ES着色器将使用代码的精灵在这个QuartzComposer文件中过滤。代码几乎可以照原样复制到OpenGL的着色器中。大部分工作可能会将OpenGL集成到您的应用程序中:将正确的视图渲染为OpenGL纹理,并将OpenGL覆盖在您的应用程序上,以执行基于着色器的动画。

+0

链接似乎已经死了 – SwiftsNamesake 2018-02-26 15:46:15

3

请在git://github.com/rmd6502/Genie.git上看看我的项目 - 现在速度很慢,但即将进行改进。

+2

[Here]( https://开头github上。com/Ciechan/BCGenieEffect#bcgenieeffect)是类似的...但工作更快 – janisz 2012-12-27 20:05:42