@IBOutlet和@IBAction指的是错误的项目,如何摆脱那些引用?

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

我已经从一个旧的xcode项目复制并粘贴了一些源代码到另一个新项目。

包含在复制的代码中,其中包含@IBOutlets和@IBActions。我的意图是稍后将它们连接到新项目的故事板上。但是,xcode以某种方式设法将引用复制到旧项目的故事板。我怎样才能摆脱那些引用呢?

enter image description here

更新:从我的故事板添加连接到buyButton后,xcode表示buyButton连接到两个不同的故事板。

enter image description here

ios xcode storyboard
6个回答
6
投票

我目前的结论是xcode(7.3.1)包含一个bug(或缺点)。

如果我终止xcode然后打开我的新项目,那么一切看起来都不错。

如果我然后打开旧项目,并打开该项目中的旧故事板,则在我的新项目中可以看到虚假子弹链接。 enter image description here

我的猜测是xcode扫描当前在任何项目中打开的所有故事板,以找到诸如“buyButton”之类的插座名称和故事板之间的链接。


2
投票

最后提出另一个解决方案我们还可以通过以下步骤从Storyboard中删除连接: -

enter image description here

找到您的连接并将其删除: -

enter image description here


1
投票

试试这个:-

单击Outlet点

enter image description here

点击它将引导你的Main.Storyboard

enter image description here

单击View Controller,您将看到您的插座已连接

enter image description here

通过单击“关闭”按钮删除连接,您就可以开始了。


1
投票

只需更改一个字母,它会导致与故事板的关系中断,并将其再次链接到新的故事板,我希望它能帮到你。


1
投票

截至2017年6月25日,这仍然是Xcode 8.3.3的问题。

我成功的唯一解决方案是更改实体的名称。

什么对我不起作用:

  • 干净,干净的项目构建文件夹
  • 重启Xcode
  • 将Xcode升级到最新版本(对我来说也存在于8.1和8.2中)
  • 关闭我打开的另一个项目
  • 删除并重新添加连接
  • 检查源代码并从xml中删除重复的连接
  • 单击任何位置以查看引用,删除它们并重新添加。

1
投票

重新启动Xcode后我解决了。现在它的工作正常。

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