我正在开发一个iOS 4应用程序,我已经开发了一些我想在其他项目中使用的类。
其中一个名为MapViewController
的类是UIViewController子类。此类使用我使用界面构建器创建的XIB文件。
我想知道在另一个项目中使用MapViewController
作为新类的超类,如何使用它与XIB相关联?
我想重用MapViewController
及其XIB,但我不知道是否必须对XIB文件做一些特别的事情。
我不知道如何解释这一点。如果您需要更多详细信息,请告诉我。
更新
我想创建一个继承自MapViewController
的新类,如下所示:
...
@interface NewMapViewController : MapViewController {
...
而且,现在如果我想继续使用相同的XIB(来自MapViewController
的那个),我该怎么办?
答案 0 :(得分:6)
由于你将继承MapViewController
,你的MapViewController
将成为超级班级。而且你还有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]];