【问题标题】:how do I override a property of UIViewController?如何覆盖 UIViewController 的属性?
【发布时间】:2015-09-09 09:30:36
【问题描述】:

我有一个 UIViewController 的子类,但我希望它具有以下属性:

@proprty (nonatomic, strong) UIView *view

而不是正常的:

@property(nonatomic, retain) UIView * __null_unspecified view

在 UIViewController.h 中定义。

我可以这样做吗?如果是,那么如何? 谢谢。

【问题讨论】:

  • 你想要UIViewController的属性
  • @property (strong, nonatomic) UIViewController *viewController;然后你就可以通过这个来实现
  • @JagveerSingh 我的意思是我想在子类中覆盖 UIViewController 的视图属性,而不是创建新属性
  • 如果你在.h文件中创建了属性,那么你可以随时修改
  • @NitzanR:你想要什么,请你详细解释一下。

标签: ios objective-c uiviewcontroller ios9 xcode7


【解决方案1】:

覆盖 UIViewController 子类中的方法 view:

-(UIView *)view
{

 UIView *customView= [super view];
[customView setSomething:something];
[customView addSubview:someView];
return  customView;
}

@proprty (nonatomic, strong) UIView *view

这将在 UIViewController 中创建 gettersetter 方法,即

-(UIView *)view; //getter
-(void)setView:(UIView *)view; //setter

查看this 了解更多信息。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-13
    • 2011-11-06
    • 2015-01-08
    • 2013-12-16
    • 1970-01-01
    • 1970-01-01
    • 2012-07-11
    • 1970-01-01
    相关资源
    最近更新 更多