gpt4 book ai didi

ios - 如何修复 "Expression type ' @lvalue CGRect/CGSize' 在没有更多上下文的情况下不明确”?

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

我有一个用 Swift 3 和 Xcode 9 编写的现有代码库,由于代码中的构建错误,我无法迁移到 Xcode 10 和 Swift 4.2。

我现在遇到的问题是:

“表达式类型‘@lvalue CGRect’在没有更多上下文的情况下不明确”

我在代码的 3 个不同区域遇到了这个错误。第四个是相关但不同的是它说:

“表达式类型‘(CGSize) -> CGSize’在没有​​更多上下文的情况下不明确”

我已经尝试更改表达式中的所有值以显式使用数据类型 CGFloat 来删除任何推断的数据类型错误,但这仍然没有解决问题。

 override func sizeThatFits(_ size: CGSize) -> CGSize {
let adjustedHeight = 8.0 + titleLabel.frame.height + 2.0 + underlineView.frame.height
adjustedHeight += 16.0 + mapImageView.frame.height + 16.0
return CGSize(width: bounds.width, height: adjustedHeight)
}

override func sizeThatFits(_ size: CGSize) -> CGSize {
let adjustedHeight = 10.0 + titleLabel.frame.height + 15.0 + daysRoundedView.frame.height
adjustedHeight += daysTextLabel.frame.height + 10.0 + logoImageView.frame.height + 20.0
return CGSize(width: size.width, height: adjustedHeight)
}

override func sizeThatFits(_ size: CGSize) -> CGSize {
let adjustedHeight = 8.0 + titleLabel.frame.height + 2.0
adjustedHeight += underlineView.frame.height + 16.0 + flyerImageView.frame.height + 16.0
return CGSize(width: bounds.width, height: adjustedHeight)
}

override func sizeThatFits(_ size: CGSize) -> CGSize {
let adjustedHeight = 8.0 + titleLabel.frame.height + 2.0 + underlineView.frame.height + 16.0
adjustedHeight += descriptionTextView.sizeThatFits(CGSize(width: size.width - 40, height: size.height)).height + 16.0
return CGSize(width: bounds.width, height: adjustedHeight)
}

问题出在 adjustedHeight 变量上。我不确定 Swift 4.2 中是否为此使用了不同的函数或语法,但我似乎无法修复此错误。

最佳答案

其中一个问题是 adjustedHeight 是一个 let,但它在下一行中用 += 运算符进行了修改。将 adjustedHeight 更改为 var 后问题是否得到解决?

关于ios - 如何修复 "Expression type ' @lvalue CGRect/CGSize' 在没有更多上下文的情况下不明确”?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54464103/

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