作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 AHEasing在我的 Swift 项目中。我已经通过 cocoapods 安装了它,并将这一行包含在我的桥接头中:
#import <AHEasing/CAKeyframeAnimation+AHEasing.h>
我可以很好地访问 CAKeyframeAnimation+AHEasing.h 中的函数,但是当我尝试时
var alphaAnimation = CAKeyframeAnimation.animationWithKeyPath("alpha", function: QuadraticEaseInOut, fromValue: 1.0, toValue: 0.0)
我收到错误
Cannot invoke 'animationWithKeyPath' with an argument list of type '(String, function: (Double) -> Double, fromValue: Double, toValue: Double)'
经过一番挖掘,我确认 QuadraticEaseInOut 确实被转换为 (Double) -> Double 闭包,而该参数的类型 AHEasingFunction 正在被转换为 CFunctionPointer<((Double) -> Double) >.
有没有办法在这两种类型之间进行转换?有人在 Swift 中成功使用过 AHEasing 吗?还有其他我没有看到的解决办法吗?
最佳答案
我听到一些人的报告说这是 Swift 1.2 的问题,在 Swift 2 中不再是问题。
无论哪种方式,我只是通过完全在 Swift 中实现 AHEasing 所需的功能来解决这个问题。
关于ios - AHEasing 是否在 Swift 中运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31461649/
我正在尝试使用 AHEasing在我的 Swift 项目中。我已经通过 cocoapods 安装了它,并将这一行包含在我的桥接头中: #import 我可以很好地访问 CAKeyframeAnima
我是一名优秀的程序员,十分优秀!