我是ios开发的新手。我想开发自定义导航按钮方法。
-(void) handleNext:(id)sender
{
MRGAppDelegate *appDelegate = (MRGAppDelegate*)
[[UIApplication sharedApplication]delegate];
[appDelegate.viewController GotoDirectoryView:self.restListViewController calledView:self.view];
}
在MRGViewController.m
中 -(void) GoToDirectoryView:(RestaurantListViewController*) resViewContrller calledView:(UIView*)viewControllerView
{
self.resListViewController = resViewController;
[resViewController release];
[viewControllerView removeFromSuperview];
[self.resListViewController viewDidLoad];
[self.view addSubview:self.resListViewController.view];
}
但是不要调用RestaurantListViewController viewDidLoad不要调用。没有错误出现。我不知道为什么?请帮帮我。
答案 0 :(得分:1)
viewDidLoad
,viewWillAppear
等是视图控制器生命周期方法,当在导航堆栈上加载视图时会自动调用这些方法。您根本不需要调用这些方法。
目前,您只是在现有视图控制器上添加视图,而如果希望调用视图控制器生命周期方法,则需要加载新的视图控制器。
使用喜欢 -
[self.navigationController pushViewController:restListViewController animated:YES];
[restListViewController release];
编辑1 -
restListViewController = [[RestaurantListViewController alloc] init];
[self presentModalViewController:restListViewController animated:YES];
[restListViewController release];