gpt4 book ai didi

ios - 无法在 Swift 项目中调用 'getControlPointAtIndex'

转载 作者:可可西里 更新时间:2023-11-01 02:23:03 25 4
gpt4 key购买 nike

我一直在尝试恢复在 swift 早期编写的字幕文本脚本,并使其在 swift 1.2 中运行。我已经能够修复除一个错误之外的所有错误,该错误出现在原作者提供的代码的最后部分(他声明他将不再更新项目 (@ https://github.com/cbpowell/MarqueeLabel-Swift))。完整的编译器错误是, "无法使用 '(Uint, values: inout [Float])' 类型的参数列表调用 'getControlPointAtIndex'。

func controlPoints() -> [CGPoint] {
// Create point array to point to
var point: [Float] = [0.0, 0.0]
var pointArray = [CGPoint]()
for (var i: UInt = 0; i <= 3; i++) {
self.getControlPointAtIndex(i, values: &point)
pointArray.append(CGPoint(x: CGFloat(point[0]), y: CGFloat(point[1])))
}

return pointArray
}

问题出现在'self.getControlPointAtIndex(i, values: &point) 行,我已经尝试了所有方法来修复它。上面的链接中提供了完整的文件文件。

最佳答案

根据 Apple 的文档,方法 getControlPointAtIndex:values: 期望其参数的类型为 IntUnsafeMutablePointer<Float> .

所以你应该改变UIntInt并为 point 分配一个指针,类似于以下内容:

func controlPoints() -> [CGPoint] {
// Create point array to point to
var point = UnsafeMutablePointer<Float>.alloc(2)
var pointArray = [CGPoint]()
for (var i: Int = 0; i <= 3; i++) {
self.getControlPointAtIndex(i, values: point)
pointArray.append(CGPoint(x: CGFloat(point[0]), y: CGFloat(point[1])))
}
point.dealloc(2)

return pointArray
}

关于ios - 无法在 Swift 项目中调用 'getControlPointAtIndex',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29730614/

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