2013-07-22 61 views
2

我有內存管理問題,終於找到了問題,我不斷實例化新的視圖控制器。當應用程序啓動時,它會直接轉到FirstViewController,這是故事板中UITabBarController中的一個元素。無法將視圖控制器彈回到我的故事板中的UITabView中

我然後顯示FilterViewController用這種方法:

​​

的正常工作,並提出了FilterViewController它有自己的.xib,所以它是不故事板。

現在試圖彈回至FirstViewController當我用這個方法:

- (IBAction)backToMap:(id)sender { 

    // i used the below when trying to push another view controller 
    /*UIStoryboard *storyboard = [UIStoryboard storyboardWithName 
     :@"MainStoryboard" bundle:nil]; 

    FirstViewController *fvc = [storyboard 
     instantiateViewControllerWithIdentifier:@"FirstViewController"]; 

    fvc.modalTransitionStyle = UIModalTransitionStyleCoverVertical;*/ 

    [self.navigationController popViewControllerAnimated:YES]; 
} 

但是它沒有做任何事情。什麼都沒有,我不知道這裏有什麼問題?

+0

that'transitionFromView:toView:duration:options:completion:'調用看起來完全錯誤。刪除它,看看會發生什麼。 –

+0

@MatthiasBauch嗨感謝您的評論,刪除它,並且按鈕現在不打開視圖控制器 –

+1

然後FirstViewController可能不是導航控制器的一部分。檢查'self.navigationController'是否爲零。如果這是你必須包裝你的FirstViewController在UINavigationController –

回答

1

popViewontrollerAnimated僅在您將視圖控制器推入導航堆棧時才使用,因此除非項目中有一個,否則它將不會執行任何操作。

當您使用transitionFromView ...您正在用替換當前視圖與新視圖,因此您需要再次調用它以返回到舊視圖。

+0

所以實際上我沒有做錯事情?有沒有更高效的內存方式? –

+0

好吧,您在searchOptions方法中有一些額外的調用。由於您不會返回到此視圖控制器,因此只需要前兩個調用。內存應該沒問題。 – lnafziger

相關問題