【问题标题】:Custom class not shown in the storyboard identity inspector故事板身份检查器中未显示自定义类
【发布时间】:2014-03-25 06:32:05
【问题描述】:

我在我的应用程序中创建了一个名为EmpresasTableViewController 的新类,并在故事板中将CategoriasViewController 复制到EmpresasTableViewController,我只想将类EmpresasTableViewController 分配给故事板中的EmpresasTableViewController,但名称@ 987654325@ 没有出现在Identity Inspector 中。

创建类后没有报错,但是为什么在storyboardIdentity InspectorCustom Class下没有显示为类,其他的视图控制器都显示了。

【问题讨论】:

  • 有时您必须先保存,甚至退出项目并再次打开它,以便让项目再次被索引,以便情节提要看到类。尽管表面上看,Interface Builder(接口)和 Xcode(代码)仍然是两个完全不同的东西,它们的交流并不那么好。
  • 你尝试清理项目了吗?
  • @GlaucoNeves,清理项目并不能解决问题。我已经关闭项目,重新打开,类就显示出来了,无论如何谢谢。
  • @matt,你是对的,在关闭并再次打开项目后,显示类..谢谢你,请把你的评论作为我问题的答案,我会选择它作为第一个权利回答。
  • 没问题,如果您愿意,可以在@reecon 的回答上加分。我很高兴我能提供帮助!这种事经常发生在我身上,每次都让我发疯......

标签: ios objective-c cocoa-touch storyboard


【解决方案1】:

首先,您需要保存所有文件。

你可以尝试的是:

选项 1。 关闭并重新打开带有您的项目的 Xcode

选项 2。清理您的项目并重新构建它。

选项 3。 强制 Xcode 再次对您的项目进行索引:

打开Organizer(窗口> 管理器)并选择Projects 模式。 在左侧视图中选择您的项目,然后单击Delete... 项目Derived Data的按钮。

这将删除项目的代码感知索引并强制Xcode 重建索引,这可能会解决问题。

【讨论】:

    【解决方案2】:

    唯一对我有用的是:

    1. 创建一个新组(文件夹)我称之为Controller2
    2. 右键单击“将文件添加到...”
    3. 选择所有类文件
    4. 删除(参考)控制器组
    5. 将组控制器 2 重命名为控制器

    【讨论】:

      【解决方案3】:

      从非洲到日本再到加拿大,整个互联网上的答案都没有解决我的问题。零。尝试了人类已知的所有黑客和技巧。这是因为所有答案都与具有单一目标的项目有关。

      两个小时后,50 根白发,流了很多眼泪,后来我意识到这是因为我创建了一个 watchOS WKInterfaceController 类,它与现有的 iOS 同名 >ViewController 类。 Xcode 对此给出零警告。

      【讨论】:

        【解决方案4】:

        您可以将 xib 编辑为文本。 CustomClass 属性在视图中,在此处手动更改,然后切换回界面构建器视图。

        【讨论】:

          【解决方案5】:

          您可以直接手动在Class栏中输入您的控制器。它的工作。

          【讨论】:

            【解决方案6】:

            只需确保您的视图与相同的故事板视图具有正确的继承类。 如果它是一个表,请确保您继承自 UIViewController 类.. 在我做了一切之后它解决了我的问题。有帮助吗

            【讨论】:

              【解决方案7】:

              这就是答案:

              确保您选择了 UITableViewController 而不是 UIViewController,这是我在寻找大约 30 分钟后的解决方案,我希望这会有所帮助

              picture of my screen

              【讨论】:

                【解决方案8】:

                另一个问题是您的 Xcode 项目是否存储在外部驱动器/SSD 上。我遇到了Xcode 11.3.1 的这个错误。只需将项目移动到本地 Mac 存储并打开它。界面生成器现在可以正常工作了。

                有时它也有助于清理项目和重建。我注意到界面生成器并不总是正确更新......一定是另一个错误。 (我怀念 Xcode 更新可靠的日子)。

                【讨论】:

                  【解决方案9】:

                  如果有问题的自定义类不是您要关联的类类型的子类,它不会自动填充到 Identity Inspector 中。 也就是说,对于视图控制器,自定义类应该是 UIViewController。 对于表格视图单元格,它应该是 UITableViewCell子类

                  【讨论】:

                    【解决方案10】:

                    对我来说,问题是我有两个用于 Mac Os 和 iOs 平台的同名类,但目标不同。 XCode 似乎没有意识到这一点。为其中一个平台重命名类为我解决了这个问题。 还要检查并确保您为自定义类设置了正确的目标。

                    【讨论】:

                      【解决方案11】:

                      你必须在你的类中继承 UIViewController。我的错误是继承UICollectionViewCell。这样就得出了这个错误。

                      【讨论】:

                        猜你喜欢
                        • 2016-07-04
                        • 2017-12-06
                        • 2020-02-02
                        • 2016-12-26
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        相关资源
                        最近更新 更多