我有一個類名爲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