gpt4 book ai didi

ios - 在 Swift 中获取 UIImageView 旋转值

转载 作者:搜寻专家 更新时间:2023-11-01 05:54:23 25 4
gpt4 key购买 nike

我正在尝试将 Objective-C 中的 iOS 项目重写为 Xcode 6.1 中的 Swift,但我无法“翻译”这一 Objective-C 行:

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

如何在 Swift 中获取我的 UIImageView 旋转值?

最佳答案

它在 Swift 中只是稍微复杂一点,因为 valueForKeyPath 返回一个可选的,它必须被解包然后显式地转换为NSNumber。这可以(例如)通过可选链接的组合来完成和可选类型转换:

let zKeyPath = "layer.presentationLayer.transform.rotation.z"
let imageRotation = (self.imageView.valueForKeyPath(zKeyPath) as? NSNumber)?.floatValue ?? 0.0

如果键路径不是设置(或者不是 NSNumber),这模仿了 Objective-C 的行为,其中将 floatValue 消息发送到 nil 也会返回 0.0

关于ios - 在 Swift 中获取 UIImageView 旋转值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26632507/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com