在执行Segues时避免MomoryLeak

时间:2013-03-06 15:17:14

标签: memory-leaks xamarin.ios segue

我可以使用不带segues的导航(1),但我想用它(2)。

执行segue并导航回来让我的应用更慢!因为当我向后导航时它不会处理目标视图。你如何以正确的方式使用这个segues?

/*1) This code ok! But what about segues */ 
        if(_tabbarController==null)
        _tabbarController = (UITabBarController)this.Storyboard
                           .InstantiateViewController ("MainTabbarController");
        this.NavigationController.PushViewController (_tabbarController,true);

/*2) If I run this code I get  a new instance of UITabbar   */          
      this.PerformSegue("SegueShowDetail",this);

1 个答案:

答案 0 :(得分:0)

如果您正在使用故事板和导航控制器,导航控制器应在弹出堆栈时自动释放您的视图和相关内存。

例如,如果您按下按钮转到另一个视图时有一个被调用的方法,那么您将拥有:

[self performSegueWithIdentifier:@"mySegueName" sender:self];

单击辅助视图左上角的后退按钮时,将触发导航控制器处理视图。