错误images.count * 0.05(图片是NSArray),
我想播放动画
func runAnimationWithCount(count: Int, name :NSString){
var images = NSMutableArray()
for i in 0...count{
var imageName = NSString(format:"%02i", i)
var filename = "\(name)_\(imageName).jpg"
var bundle = NSBundle.mainBundle()
var path = bundle.pathForResource(filename, ofType:nil)
var image = UIImage(contentsOfFile: path)
images.addObject(image)
}
tom.animationImages = images
tom.animationRepeatCount = 1
tom.animationDuration = images.count * 0.05 //Error
tom.startAnimating()
var delay = tom.animationDuration
}
如何转换代码(Objective-C - > Swift)
[self.tom performSelector:
@selector(setAnimationImages:)
withObject:nil
afterDelay:delay];
答案 0 :(得分:0)
错误是因为您尝试将两个不同类型的值相乘。你不能这样做。将其中一个值转换为另一个值。
您没有发布足够的信息以确定要转换为的正确类型,但我会猜测:Double(images.count) * 0.05
你的第二个问题中的Objective C表达实现了一些东西,据我所知,它不存在,并且在Swift中根本没有意义。您应该努力在良好类型的边界上分离Objective C和Swift代码。在Swift代码中根本不需要那种东西。如果你需要这样做,它必须保持Objective C,直到你在Swift中重新实现相关模块并使用Swift抽象和类型来完成它。