如何将此值作为CGFloat获取?

时间:2009-07-31 14:48:53

标签: iphone casting

我要求这样的价值:

[self.layer valueForKeyPath:@"transform.rotation.z"]

我需要将它传递给一个以CGFloat为参数的方法。什么是铸造技巧?

2 个答案:

答案 0 :(得分:19)

在斯威夫特:

let f = view.layer.valueForKeyPath("transform.rotation.z")!.floatValue

在Objective-C中:

NSNumber* n = [self.layer valueForKeyPath:@"transform.rotation.z"];
CGFloat f = [n floatValue];

答案 1 :(得分:0)

如果你想要更简洁,一行的方法,你可以这样做:

CGFloat f = [[self.layer valueForKeyPath:@"transform.rotation.z"] floatValue];