CTParagraphStyleSetting当我在 swift 5.2 中调用函数时如何解决这个问题?
function myFunction() {
var alignment: CTTextAlignment = .left
var settings = CTParagraphStyleSetting(spec: .alignment,
valueSize: 1,
value: &alignment)
}
issue:
Inout expression creates a temporary pointer, but argument 'value' should
be a pointer that outlives the call to 'init(spec:valueSize:value:)'
Run Code Online (Sandbox Code Playgroud)
参考此讨论;
https://forums.swift.org/t/swift-5-2-pointers-and-coretext/34862,
你可以这样写:
let alignment: CTTextAlignment = .left
let settings: CTParagraphStyleSetting = withUnsafeBytes(of: alignment) { alignment in
CTParagraphStyleSetting(
spec: .alignment,
valueSize: 1,
value: alignment.baseAddress!
)
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1232 次 |
| 最近记录: |