【问题标题】:How to create subclass view controller whose base class has storyboard?如何创建其基类具有情节提要的子类视图控制器?
【发布时间】:2020-11-07 03:29:16
【问题描述】:

我有一个基于故事板的UIViewController,名为BaseViewController,与ID 同名。

我有一个简单的子类 MyViewController : BaseViewController(它没有情节提要也没有 XIB)。

我想创建一个MyViewController,以便它从情节提要中实例化其基类BaseViewController

我尝试了以下代码:

let storyboard = UIStoryboard(name: "MyStoryboard", bundle: nil)
let viewController = storyBoard.instantiateViewController(withIdentifier: "BaseViewController") as! MyViewController

当然,正如Sh_Khan in answer below 所指出的那样,这不起作用并导致:Could not cast value of type 'myProject.BaseViewController' (0x...) to 'myProject.MyViewController' (0x...).

那么我怎样才能创建一个MyViewController 对象呢?

【问题讨论】:

  • 您需要在情节提要中创建一个以 MyViewController 作为其自定义类的场景
  • 我正准备回答你上一个问题

标签: ios swift uiviewcontroller storyboard instantiation


【解决方案1】:

您可以将含义从孩子转换为父母,但反之亦然,原因很简单,孩子拥有与父母相关的所有数据,因此可以轻松访问,但父母不知道孩子拥有什么

【讨论】:

  • 射击,当然!那么如何创建一个MyViewController 以便它从情节提要中实例化BaseViewController
  • 不要认为这是可能的,因为最终您必须将是否转换为您在 IB 中设置为类名的 vc 或者它是超类 BTW 如果我可以的话,您可以告诉您的用例是否需要此需求有帮助吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-16
  • 2012-01-02
  • 2019-11-08
相关资源
最近更新 更多