我正在做一个项目,其中第一个视图不应包含任何标签栏,当按下视图时,它应该作为页面翻转移动。然后从下一页开始,应显示tabbar项目。如果我是正确的,我认为tabbarcontroller不会帮助我实现上述目标。所以我添加了一个tabbar元素。但是如何将按钮操作赋予tabbar元素中的选项卡栏项,以便在按下tabbar按钮时将每个视图加载为tabbar控制器的视图。任何帮助表示赞赏。 感谢
答案 0 :(得分:2)
要翻转视图,请执行此操作..
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:0.80];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight
forView:self.navigationController.view cache:NO];
[self.navigationController pushViewController:self.detailviewcontyrollerObj animated:YES];
[UIView commitAnimations];
你想从第二个视图看tabbar,所以在第一个视图中点击按钮(或其他任何东西),从app delegate编写调用函数的代码..
-(IBAction)clickme
{
AppDelegate *app = (AppDelegate *)[[UIApplication sharedApplication]delegate];
[app SwitchToTabbarController];
}
现在,在app delegate中,声明一个名为SwitchToTabbarController的方法,在其中实现这个..
_tabBarController = [[UITabBarController alloc] init];
FirstViewController *view1 = [[FirstViewController alloc] init];
SecondViewController *view2 = [[SecondViewController alloc]init];
UINavigationController *tbl1=[[[UINavigationController alloc] initWithRootViewController:view1] autorelease];
tbl1.navigationBar.barStyle = UIBarStyleBlackOpaque;
tbl1.navigationBarHidden=NO;
UINavigationController *tbl2=[[[UINavigationController alloc] initWithRootViewController:view2] autorelease];
tbl2.navigationBar.barStyle = UIBarStyleBlackOpaque;
tbl2.navigationBarHidden=NO;
_tabBarController.viewControllers = [NSArray arrayWithObjects:tbl1,tbl2,nil];
[_window addSubview:_tabBarController.view];
self.window.rootViewController = self.tabBarController;
[_window makeKeyAndVisible];
整体实施会很有帮助,我认为这就是你想要的......:)