iphone - 继承 UIViewController 类和 XIB

标签 iphone objective-c ios uiviewcontroller

我正在开发一个 iOS 4 应用程序,我已经开发了一些我想在其他项目中使用的类。

其中一个名为 MapViewController 的类是 UIViewController 的子类。此类使用我使用界面生成器创建的 XIB 文件。

我想知道是否在另一个项目中使用 MapViewController 作为新类的父类(super class),我如何使用它关联 XIB?

我想重用 MapViewController 及其 XIB,但我不知道是否必须对 XIB 文件做一些特殊的事情。

我不知道怎么解释。如果您需要更多详细信息,请告诉我。

更新:

我想创建一个继承自 MapViewController 的新类,如下所示:

...
@interface NewMapViewController : MapViewController {

...

而且,现在如果我想继续使用相同的 XIB(来自 MapViewController 的那个),我必须做什么?

最佳答案

由于您将从 MapViewController 继承,因此您的 MapViewController 成为父类(super class)。你也有 MapViewController.xib。如果您使用 NewMapViewController

的初始化程序,对我来说似乎非常简单

NewMapViewController.m

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    NSLog(@"Subclass initWithNibName called");
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {
        // Custom initialization
    }
    return self;
}

像这样初始化你的 NewMapViewContoller:

//Nib of super class is MapViewController
NewMapViewController *nmapController = [[NewMapViewController alloc] initWithNibName:@"MapViewController" bundle:[NSBundle mainBundle]];

关于iphone - 继承 UIViewController 类和 XIB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8657611/

相关文章:

javascript - jquery 绑定(bind)事件不会在手机上触发

ios - 通过选择器传递单元格索引路径

ios - 当跨任何事件导航到特定 UIViewcontroller 时,应用程序仅在 iOS 11 中崩溃

objective-c - CGEvent NSKeyDown 仅在应用程序位于最前面时才起作用?

ios - 采取 UIAlertAction 后 View 未关闭

ios - 解析 PFAnalytics 不跟踪推送打开

iphone - 如何使方法更改 Root View

ios - NS正则表达式组(匹配项)

iphone - EAGL : What does it stand for exactly?

iphone - 为什么当我添加属性时 CoreData 崩溃?