【发布时间】:2014-08-26 02:37:28
【问题描述】:
这是一个特定的 MMDrawerController 问题,尽管可能与其他 iOS 抽屉控制器有关。
我的 MMDrawerController 运行良好,可以通过在抽屉表视图中选择一行将不同的视图控制器加载到“中心”。
但是,我想避免每次在抽屉中选择菜单项时都实例化视图控制器。这似乎效率低下,尤其是如果用户在会话期间会在屏幕之间多次切换。我猜一个更好的方法是将我正在使用的(实例化的)视图控制器存储为变量并重用?我有很多视图控制器可能会加载到中心,每个视图控制器最初都会在 viewDidLoad 中完成一些“工作”。
这是我如何将一个新的视图控制器加载到中心(在我的 DrawerViewController.didSelectRowAtIndexPath 方法中):
MyViewConroller * newCenter = [[MyViewConroller alloc] init];
UINavigationController * nav = [[MMNavigationController alloc] initWithRootViewController:newCenter];
if(indexPath.row==0){
[self.mm_drawerController
setCenterViewController:nav
withCloseAnimation:YES
completion:nil];
}
我们将不胜感激有关加载这些视图控制器的最佳方法的想法/cmets。
【问题讨论】:
标签: ios objective-c viewcontroller