如何从此指针中获取值? AXValueGetValue将CGRect对象复制到我的指针中。调试器显示指针引用具有我想要的值的对象但无法转换为预期的CGRect类型。这是一个元组吗?如果是这样,我如何从该指针中获取Tuple值?
答案 0 :(得分:1)
解决方法:我删除了泛型函数copyAXValue<T>
并直接实例化了一个特定的inout变量,而不是从UnsafeMutablePointer<T>
分配一个。
class AXValueGetters {
class func asCGRect(value: AXValue) -> CGRect {
var val = CGRect.zero
AXValueGetValue(value, AXValueType.cgRect, &val)
return val
}
class func asCGPoint(value: AXValue) -> CGPoint {
var val = CGPoint.zero
AXValueGetValue(value, AXValueType.cgPoint, &val)
return val
}
class func asCFRange(value: AXValue) -> CFRange {
var val = CFRange(location: 0, length: 0)
AXValueGetValue(value, AXValueType.cfRange, &val)
return val
}
class func asCGSize(value: AXValue) -> CGSize {
var val = CGSize.zero
AXValueGetValue(value, AXValueType.cgSize, &val)
return val
}
}