子类awakeFromNib可以调用超类自定义init / setup方法吗?

我有一个第三方UIViewController设计,只能使用-进行初始化(id)initWithURL:(NSURL*)url没有其他init声明的-family方法。我想将此子类与Storyboard一起使用,因此[super initWithURL:[NSURL URLWithString:@"about:blank"]]会自动调用类似的东西除了设计模式,这只是您的目标。

我试过这个在子类中无济于事:

- (void)awakeFromNib {
    [super awakeFromNib];

    if ([super respondsToSelector:@selector(initWithUrl:)]) {
        [super performSelector:@selector(initWithUrl:) withObject:[NSURL URLWithString:@"about:blank"]];
    }
}

上面给出了有关选择器保留对象的编译器错误现在,超类initWithURL:就是这样

- (id)initWithUrl:(NSURL *)url {
    // Set url and init views
    _url = url;
    [self setup];
    return self;
}

所以我试图打电话[super performSelector:@selector(setup)]awakeFromNib,但当然私有变量_url不能从子类进行设置。如何完成此操作以供Storyboard使用?

凯科阿

您将要initWithCoder:在UIViewController子类中重写init方法。这样,您可以在创建UIViewController时返回不同的实例。

- (instancetype)initWithCoder:(NSCoder *)decoder
{
    self = [super initWithURL:[NSURL URLWithString:@"about:blank"]];
    return self;
}

有关如何从情节提要中初始化对象的其他更多信息:响应从Nib文件加载

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

从自定义onClickListener类调用活动方法

来自分类Dev

在Android中调用自定义类/方法

来自分类Dev

子类中的方法可以重载超类中的方法吗?

来自分类Dev

教义类,可以添加自定义函数吗?

来自分类Dev

NSNotificationCenter从超类还是子类调用方法?

来自分类Dev

从超类调用子类方法-设计模式

来自分类Dev

从自定义类调用视图控制器方法

来自分类Dev

Java超类调用子类方法

来自分类Dev

只要init调用[super init],在Objective C自定义init方法中调用[self init]是否可以?

来自分类Dev

从子类调用超类的方法

来自分类Dev

在自定义UITextField类中调用委托方法

来自分类Dev

在Kotlin中,接口可以从自定义类派生吗?

来自分类Dev

父类可以调用孙子类的方法吗?

来自分类Dev

我可以在超类的数组上调用子类吗?

来自分类Dev

从自定义onClickListener类调用活动方法

来自分类Dev

在自定义类中调用OnTime方法

来自分类Dev

自定义类的Objective-C类别调用方法

来自分类Dev

不在其自定义委托的其他自定义类中调用自定义委托方法

来自分类Dev

NSNotificationCenter从超类或子类调用方法?

来自分类Dev

如何使用自定义内容扩展超类的方法

来自分类Dev

具有自定义init方法的SKNode子类

来自分类Dev

子类中的方法自定义未调用

来自分类Dev

只要init调用[super init],在Objective C自定义init方法中调用[self init]是否可以?

来自分类Dev

可以在子类的方法内部使用“ super”来调用相应的超类方法而无需直接引用吗?

来自分类Dev

是否可以在其他自定义方法上调用自定义方法?

来自分类Dev

谁调用了自定义 ArrayAdapter 类的 getView() 方法

来自分类Dev

自定义片段的子类是否调用其超类的 saveInstanceState 方法?

来自分类Dev

无法调用自定义 ConstraintLayout 类的方法?

来自分类Dev

我可以在代码中为我的自定义帖子类型设置注册的自定义分类吗?

Related 相关文章

  1. 1

    从自定义onClickListener类调用活动方法

  2. 2

    在Android中调用自定义类/方法

  3. 3

    子类中的方法可以重载超类中的方法吗?

  4. 4

    教义类,可以添加自定义函数吗?

  5. 5

    NSNotificationCenter从超类还是子类调用方法?

  6. 6

    从超类调用子类方法-设计模式

  7. 7

    从自定义类调用视图控制器方法

  8. 8

    Java超类调用子类方法

  9. 9

    只要init调用[super init],在Objective C自定义init方法中调用[self init]是否可以?

  10. 10

    从子类调用超类的方法

  11. 11

    在自定义UITextField类中调用委托方法

  12. 12

    在Kotlin中,接口可以从自定义类派生吗?

  13. 13

    父类可以调用孙子类的方法吗?

  14. 14

    我可以在超类的数组上调用子类吗?

  15. 15

    从自定义onClickListener类调用活动方法

  16. 16

    在自定义类中调用OnTime方法

  17. 17

    自定义类的Objective-C类别调用方法

  18. 18

    不在其自定义委托的其他自定义类中调用自定义委托方法

  19. 19

    NSNotificationCenter从超类或子类调用方法?

  20. 20

    如何使用自定义内容扩展超类的方法

  21. 21

    具有自定义init方法的SKNode子类

  22. 22

    子类中的方法自定义未调用

  23. 23

    只要init调用[super init],在Objective C自定义init方法中调用[self init]是否可以?

  24. 24

    可以在子类的方法内部使用“ super”来调用相应的超类方法而无需直接引用吗?

  25. 25

    是否可以在其他自定义方法上调用自定义方法?

  26. 26

    谁调用了自定义 ArrayAdapter 类的 getView() 方法

  27. 27

    自定义片段的子类是否调用其超类的 saveInstanceState 方法?

  28. 28

    无法调用自定义 ConstraintLayout 类的方法?

  29. 29

    我可以在代码中为我的自定义帖子类型设置注册的自定义分类吗?

热门标签

归档