【问题标题】:Unable to select custom class for ViewControllers in Xcode Storyboard无法在 Xcode Storyboard 中为 ViewControllers 选择自定义类
【发布时间】:2013-09-29 14:10:35
【问题描述】:

我刚刚将 Xcode 升级到 5.0。我对可可还很陌生,所以我希望我忽略了一些基本的东西。基本上我无法让 Xcode 看到我想用作视图控制器父类的自定义类。最初我想为 tableview 控制器创建一个自定义类,但为了简化问题,我尝试使用常规视图控制器,但这也不起作用。

我做什么:

  • 创建新项目:单视图应用程序
  • 给它添加一个 cocoa 类(File->New->File->Objective-C 类。我将它命名为 MyViewController 并使其成为 UIViewController 的子类
  • 我在情节提要中选择项目模板附带的默认视图,并在身份检查器中尝试选择自定义类下的 MyViewController

该类根本没有出现在下拉列表中,我自己也无法输入。报告相同问题的许多其他威胁建议关闭/重新打开项目和 Xcode,但这对我也不起作用。

【问题讨论】:

  • 在情节提要中,确保您选择的是父视图控制器而不是视图本身。

标签: cocoa-touch viewcontroller


【解决方案1】:

当你在 Storyboard,Xcode 的 Interface Builder 中时,确保你点击了视图下的黑色条:

这将选择情节提要中的视图控制器(而不是视图)。注意整个场景周围有一个蓝色边框。选择此项后,您可以在 Identity Inspector 中设置视图控制器的类。

【讨论】:

  • @AlexanderN 很高兴我能帮上忙。
【解决方案2】:

我终于解决了。您必须保存您的工作并退出 xcode。但是不要关闭,你必须退出 xcode。

当你再次运行 xcode 时,你会看到你刚刚创建的视图控制器。

【讨论】:

  • 不要将此评论标记下来!我花了一段时间试图解决同样的问题,这是唯一真正有效的问题。我喜欢 xcode,它很棒!!!! :(
  • 这最终解决了我看到的问题 =]
  • 这对医疗也有帮助。
  • 无用的评论
【解决方案3】:

此外,请确保您的故事板中的视图控制器类型(例如 TableViewController)与您的视图控制器超类(例如 TableViewController)相匹配。否则,它不会显示在可供选择的类列表中。

【讨论】:

    【解决方案4】:

    对我来说,问题是我的类从另一个框架扩展了一个类,明确包括包名,例如:

    class BaseMessageController: MessageKit.MessagesViewController
    

    修复是删除框架名称:

    class BaseMessageController: MessagesViewController
    

    可能是 Apple 的错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-06
      • 1970-01-01
      • 2015-12-21
      • 2021-03-10
      • 2021-09-12
      • 1970-01-01
      • 2020-09-12
      相关资源
      最近更新 更多