我正在开发一个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/