未使用的“IBOutlet”无法从“文件所有者”“连接检查器”,“OutLets”列表中删除

时间:2013-07-28 09:30:43

标签: ios objective-c xib xcode4.6 iboutlet

我将FairListViewController类复制到了我的项目中。我将其重命名为ExibitorViewController

IBOutlet名为

UITableView *fairListTableView;

在nib文件中。我用

更改了它
UITableView *exibitorTableView;

现在一切正常。但有一件事我注意到之前的tableView IBOutlet(这里是fairListTableView)“名称仍列在

ExibitorViewController.xib > File's Owner > Connection Inspector > OutLets部分。

虽然它没有连接,也没有打扰。要删除它,我必须转到nib xml文件。我已经完成了以下步骤:

  1. 右键单击ExibitorViewController.xib
  2. 文件>打开作为>源代码
  3. 搜索(Control + F)fairListTableView
  4. 从那里删除相关代码。
  5. 我找到的代码是:

    <string>fairListTableView</string>
       <object class="IBToOneOutletInfo">
          <string key="name">fairListTableView</string>
          <string key="candidateClassName">UITableView</string>
       </object>
    

    但在保存并清理IBOutlet仍显示在那里的项目之后。如果有人知道删除它的技巧,请与我分享。

3 个答案:

答案 0 :(得分:0)

您是否尝试在Interface Builder中删除它,而不是更改.xib XML? XCode很可能会在退出时保存Interface Builder中的内容,因此它可能会覆盖您手动执行的任何更改。

答案 1 :(得分:0)

有时我遇到同样的问题。确保从Interface Builder,Product - &gt;中删除它。清理然后重新启动Xcode。

这对我来说通常都有诀窍

答案 2 :(得分:0)

我发现我需要删除项目的DerivedData文件夹才能获得&#34;缓存&#34; IB参考被删除。清理并重新启动无效。

使用Swift和xCode 7.2。 YMMV

位置~/Library/Developer/Xcode/DerivedData/有关此内容的详细信息,请here