如何通过复制现有的UIViewController来创建新的UIViewController?

时间:2014-11-02 22:09:25

标签: ios xcode6

我想创建一个与现有UIViewController非常相似的新UIViewController。我尝试复制文件(old.m,old.h和old.xib)并重命名它们(new.m等)结果,当添加到项目中时,编译得很好,但是我遇到了问题initWithNibName的实现;

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
        someCustomWork(); // Not important for the problem, but the reason for this function!
    }
    return self;
}

对超级initWithNibName的调用总是返回(null),对于原始函数,返回一个有效的对象。

那么,我在这里错过了什么?如何通过复制现有文件来最好地创建新的UIViewController?

谢谢!

1 个答案:

答案 0 :(得分:0)

遗产。在.h文件中创建一个新的空白VC:

#import "OldViewController.h"

@interface NewViewController : OldViewController

这将使newVC具有与旧版本相同的功能和属性。然后覆盖新内容中必须不同的所有内容。

不确定xib文件,从未使用过故事板。