我有一个类名为IGMapViewController
的getInstance initWithNibName前:
在我有
static IGMapViewController *instance =nil;
+(IGMapViewController *)getInstance {
@synchronized(self) {
if (instance==nil) {
instance= [IGMapViewController new];
}
}
return instance;
}
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// more code
instance = self;
}
return self;
}
如果使用对象多则1类,但只在一个类中使用initWithNibName
。
在init方法中名为IGRouteController
的类中,我使用_mapViewController = [IGMapViewController getInstance];
这发生在initWithNibName
在另一个类中执行之前发生。
在IGRouteController
我在那个方法我用的方法updateRouteList
:
[_mapViewController drawSuggestedRoute:suggestedRoute];
这一切都没有运行,但我看不到结果。
如果我使用:
IGMapViewController *wtf = [IGMapViewController getInstance];
[wtf drawSuggestedRoute:suggestedRoute];
然后它的工作很大。
那么是否有可能获得一个实例和init以后用一个笔尖?
你想达到什么目的? – 2013-05-11 17:44:14
获得某个地方的实例。initWithNib并让我得到的实例与使用initWithNib创建的实例相同。 – clankill3r 2013-05-11 21:22:18
我曾与试图有这样的视图控制器单身人士的应用程序,这是不愉快的,你想要做什么? – 2013-05-12 11:10:42