我想使用此处引用的 UIView“吸”过渡( View “吸”到一个点):
http://iphonedevwiki.net/index.php/UIViewAnimationState#Using_suckEffect
但是,上面的方法使用私有(private) API,这使得它对于 App Store 应用程序来说几乎毫无用处。如何在不依赖私有(private) API 的情况下重新创建类似的效果?我猜答案与 OpenGL 有关,尽管我在这方面的经验为零。
最佳答案
只要 Apple 不公开记录效果,并且您想避免因使用私有(private) API 而被拒绝的风险,您就必须推出自己的 API。
开始解决这个问题的建议是使用 OpenGL ES 着色器。
以下博客文章包含一个演示 Quartz Composer 补丁,用于创建 OS X 和 iOS 中的 Genie 效果: http://www.aderstedtsoftware.com/users/erik/weblog/c7cb9/
对于 OpenGL ES 着色器来说,一个好的开始是使用此 QuartzComposer 文件中 Genie Filter 中的代码。该代码几乎可以按原样复制到 OpenGL 的着色器中。大多数工作可能是将 OpenGL 集成到您的应用程序中:将正确的 View 渲染到 OpenGL 纹理并将 OpenGL 覆盖在您的应用程序上以根据着色器执行动画。
关于iphone - UIView "suck"动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2664472/