Xcode 10 beta2:无法为没有参数的类型'UIView'调用初始值设定项

问题描述 投票:6回答:4

我已下载Xcode 10 beta2并重建我的项目,代码如下:

let someView = UIView()

出现以下错误:

Cannot invoke initializer for type 'UIView' with no arguments

很奇怪。使用Xcode 10 beta2时是否有人遇到过这些构建错误?

ios swift xcode xcode10
4个回答
1
投票

对我来说,扩展NSObjectProtocol是合理的:

extension NSObjectProtocol where Self: UIView

我通过将NSObjectProtocol替换为UIView符合的任何其他协议来修复它。就我而言,这是UIAppearance:

extension UIAppearance where Self: UIView

0
投票

试试这个

let someView = UIView(frame: CGRect.zero)

这个对我有用


0
投票

只需添加“frame”参数:UIView(frame:CGRect.zero)(或者你需要的任何东西)

在我的代码中,我设置了像这样的视图,后来我添加了约束(基本上覆盖了框架参数)。

对UIView,UILabel,UIScrollView和其他人来说也是如此...对于UIButtons,添加“type”参数:UIButton(类型:UIButtonType.custom)


0
投票

经过几个小时的调试后,我终于找到了问题。

我使用pod SwiftTheme,在将其升级到新版本后,这些错误已经消失。

enter image description here

看到这个commit

© www.soinside.com 2019 - 2024. All rights reserved.