参见英文答案 >
‘UIFont’ is not convertible to ‘UIFont?’ 3个
在最新的Xcode beta中编译我的项目时,我收到以下错误.
在最新的Xcode beta中编译我的项目时,我收到以下错误.
导致它的代码行是这样的:
let font = UIFont(name: "OpenSans-Semibold",size: 10.0)
我不知道如何解决这个问题.
任何的想法?
所以这里有更多背景:
private lazy var view: UIView = { let view = UIView(frame: CGRectMake(0,34,80)) let label = UILabel() label.translatesAutoresizingMaskIntoConstraints = false let font = UIFont(name: "OpenSans-Semibold",size: 10.0) label.font = font return view }()
解决方法
是的,我也有同样的问题.在我尝试使用UIFontDescriptor初始化UIFont之前,没有什么对我有用.所以你的代码现在看起来像:
private lazy var view: UIView = { let view = UIView(frame: CGRectMake(0,80)) let label = UILabel() label.translatesAutoresizingMaskIntoConstraints = false let descriptor = UIFontDescriptor(name: "OpenSans-Semibold",size: 10.0) let font = UIFont(descriptor: descriptor,size: 10.0) label.font = font return view }()
你也可能需要清洁&在此更改后重建您的项目,Xcode编译器首先无法识别更改.