對不起,如果這個問題是基本的,但過去兩天我一直在困擾這個bug &我一直無法克服它。我使用的Xcode 4.3.2Xcode 4:在另一個文件的方法中加載一個筆尖
我試圖載入名爲AController.xib筆尖在一個名爲方法「 - (空)進程」中的文件名爲BController.m
需要明確的是,我將./A/AController.xib(這是一個UIView),./A/AController.m,./A/AController.h複製到目錄中./B
我只提到這一點,因爲我不是當然,如果它對我的問題很重要。
目前,我的運作流程流(這可能是我的問題):
- 視圖加載帶有「購買」按鈕
- 用戶點擊「購買」按鈕,有一個名爲一個IBOutlet 「現在購買」
- 「現在購買」呼叫「購買」,然後調用「過程」然後
進程試圖用下列(選項1)加載筆尖:
AControlle r * blah; ([object is in bundle]){ if([object isKindOfClass:[AController class]]) blah =(AController *)object; } assert(blah!= nil & &「blah can not be nil」); [self.view addSubView:blah];
我來到這裏的錯誤是 「主題1:信號SIGABRT」 中的main.m 我也試過(選項2),
AController *myView = [[AController alloc] initWithFrame:self.view.bounds];
[self.view addSubview:myView];
[AController release];
和(選項3)
AController * vc = [[AController alloc] initWithNibBundle:@"AController" bundle:nil]; [self.nc pushViewController:vc animated:NO];
我得到同樣的錯誤,所有3個選擇。每個選項都在「過程」方法中嘗試過。 「過程」寫在B.m.任何人都可以提供一些幫助,以便我可以弄清楚這一點嗎?任何關於爲什麼這些選項失敗的指導將對我的理解非常有幫助,我們將非常感謝。感謝您幫助noob!
./A/AController.xib(這是一個UIView)..我認爲筆尖是UIViewcontroller而不是UIView –
AController.xib是UIView。 AController是UIViewController的子類 – Henry