作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
如何从该指针中获取值? AXValueGetValue将 CGRect 对象复制到我的指针中。调试器显示指针引用了一个具有我想要的值的对象,但未能转换为预期的 CGRect 类型。这是元组吗?如果是这样,我如何从该指针中获取 Tuple 值?
最佳答案
解决方法:我删除了通用函数 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
}
}
关于swift 4 AXValueGetValue 可选值为 nil 但调试器显示一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49285656/
如何从该指针中获取值? AXValueGetValue将 CGRect 对象复制到我的指针中。调试器显示指针引用了一个具有我想要的值的对象,但未能转换为预期的 CGRect 类型。这是元组吗?如果是这
我是一名优秀的程序员,十分优秀!