看板 MacDev 關於我們 聯絡資訊
各位先進大家好, 小弟我是ios develop的初心者, 今日在測試一項功能xib切換的時候,發生了一個問題! 假設我有三個viewcontroller : testveiwcontroller, test2viewcontroller, testTabcontroller, 如今程式進入點為testviewcontroller(當中有一按鈕切換至test2viewcontroller) code: switchxib_test2ViewController *v2=[[switchxib_test2ViewController alloc] initWithNibName:@"switchxib_test2ViewController" bundle:nil]; [self.view.superview addSubview:v2.view]; [self.view removeFromSuperview]; [v2 release]; 當畫面切換至test2viewcontroller時(當中有一按鈕切換至testTabcontroller) code: switchxib_testTabController *v3=[[switchxib_testTabController alloc] initWithNibName:@"switchxib_testTabController" bundle:nil]; [self addChildViewController:v3]; [self.view addSubview:v3.view]; [v3 release]; 當切換至testtabcontroller時,錯誤產生: Thread 1:EXC_BAD_ACCESS(code=1, address=xxx ==================================================================== 請問各位大大這樣子的錯誤訊息是哪裡地方出錯了呢? ps:若是單一切換,如testviewcontroller -> test2viewcontroller [OK] testview2controller -> testTabcontroller [OK] 但是將這三個xib串起來就會產生錯誤! 麻煩各位提供點意見~謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 124.219.9.200
appleway:你的作法完全錯了。[v2 release]; v2就死了 09/25 16:01
appleway:活下來的是v2的view 因為v2 的view有superview. 09/25 16:02
appleway:Check apple's doc about manage child viewcontrollers 09/25 16:04
sweet00914:感謝APPLEWAY大大的提醒~您回答正解!0.0 09/25 23:07
uranusjr:讓我想起這篇 #1GmmPhDB 09/25 23:37