我在Xcode上得到一个错误说没有关于视图控制器的信息。

无法插入新的出口连接:无法找到所命名类的任何信息

为什么会这样?


当前回答

以下是一些可以解决这个问题的方法(难度依次递增):

Clean the project (Product > Clean) Manually paste in @IBOutlet weak var viewName: UIView! // or @IBAction func viewTapped(_ sender: Any) { } and control drag to it. (Change type as needed.) Also see this. Completely close Xcode and restart your project. Delete the Derived Data folder (Go to Xcode > Preferences > Locations and click the gray arrow by the Derived Data folder. Then delete your project folder.) Click delete on the class, remove reference (not Move to Trash), and add it back again. (see this answer)

其他回答

以下是一些可以解决这个问题的方法(难度依次递增):

Clean the project (Product > Clean) Manually paste in @IBOutlet weak var viewName: UIView! // or @IBAction func viewTapped(_ sender: Any) { } and control drag to it. (Change type as needed.) Also see this. Completely close Xcode and restart your project. Delete the Derived Data folder (Go to Xcode > Preferences > Locations and click the gray arrow by the Derived Data folder. Then delete your project folder.) Click delete on the class, remove reference (not Move to Trash), and add it back again. (see this answer)

或者,如果以上都不起作用,则首先在文件中输入出口的名称@IBOutlet weak var headerHeightConstraint: NSLayoutConstraint!然后从nib中的出口单击并拖动到刚才以编程方式创建的变量。它应该可以工作,不需要任何清理、构建和删除任何东西的麻烦。

请只执行以下两个步骤以消除此错误。

1.  Clean Project using Product -> clean.
2.  Run the Project.

现在尝试添加/连接操作或出口。

工作很好,我很多次。

我通过编程方式创建标签和文本字段,然后从代码左侧的小空圆圈中command - drag到Storyboard上的组件,从而解决了这个问题。为了说明我的观点:我写了@IBOutlet weak var HelloLabel: UILabel!,然后按Command并将代码拖到故事板上的组件中。

关闭你正在做的项目。 删除项目的【DerivedData】文件夹。这个文件夹可能在里面 项目的文件夹或内部 ~ /图书馆/开发/ Xcode / DerivedData / (你的项目)/)或其他由你设置的地方。 重新启动项目。