iOS playground错误,部署目标较低

a6b3iqyw  于 2023-07-01  发布在  iOS
关注(0)|答案(1)|浏览(125)

我尝试在iOS playground中使用Scheduler,但得到如下错误:

expression failed to parse:
error: Playground.playground:46:8: error: 'Scheduler' is only available in iOS 13.0 or newer; clients of '__lldb_expr_10' may have a lower deployment target
    S: Scheduler, S.SchedulerTimeType == SchedulerTimeType, S.SchedulerOptions == SchedulerOptions

我不知道在哪里设置部署目标,因为它是一个独立的文件,而不是一个工作区或项目。有人能帮忙吗?

sigwle7e

sigwle7e1#

如果您使用Playground,则需要显式地导入或表示将要使用的所有内容。
因此,在您的情况下,您可以将@available(iOS 13.0,*)属性添加到使用Scheduler的function的属性中。
我在Playground中尝试使用CGFloat时遇到了同样的问题。这很有帮助

@available(iOS 2.0, *)
public func width(string: String, withConstrainedHeight height: CGFloat, font: UIFont) -> CGFloat {
    let constraintRect = CGSize(width: .greatestFiniteMagnitude, height: height)
    let boundingBox = string.boundingRect(with: constraintRect, options: .usesLineFragmentOrigin, attributes: [NSAttributedString.Key.font: font], context: nil)
    
    return ceil(boundingBox.width)
}

相关问题