我正在使用菜单的模态视图,它应该在应用程序的最开始出现。然后,触摸菜单中的按钮可将视图更改为主视图...
与许多其他模态视图用法不同,模态视图必须在没有主视图触摸的情况下假装,但必须先于它...
当通过按钮在主视图中间调用时,模态视图显示成功,但如果我将其显示在开头(通过放置
)则不起作用 [self presentModalViewController:menuModal animated:YES];
在早期阶段调用的函数..)
我考虑从菜单视图中将主视图称为模态视图,但这是一种相反的方式,所以我不确定。 我怎么能实现它? 请帮帮我...
答案 0 :(得分:3)
无法在viewDidLoad和viewWillAppear方法的现有视图上推送模态视图或普通视图。由于视图本身在此之前尚未加载。
因此,放一个
-(void)viewDidAppear:(BOOL)animated
{
[self presentModalViewController:menuModal animated:YES];
}
您在应用初始视图或主视图的(void)viewDidAppear:(BOOL)animated
方法(如上所示)中的语句。
希望这会对你有所帮助。
答案 1 :(得分:0)
我通常这样做的方法是创建一个splashViewController类。当app delegate启动时,我实例化splashVC,并将其添加到主窗口。在splashVC中,您可以放置按钮,当用户点击按钮时,splashVC将自行删除。
在appDelegate中:
// in didFinishLaunching
SplashViewController *svc = [[SplashViewController alloc] init];
[self.window addSubview: svc.view];
svc.view.tag=kSPLASHTAG;
[svc release];
[window makeKeyAndVisible];
在splashVC中:
// in viewDidLoad or init method
// create your menu, add it to self.view
// in button tap method
[self.view removeFromSuperview];