2011-06-16 35 views
0

我正在使用导航应用程序。我有一个homeViewController与两个视图(接受,服务)。当我点击serviceView中的按钮时,它应该去acceptView。我应该有导航栏中的后退按钮,这会将我从acceptView返回到serviceView。当我试图使用[自导航控制器pushViewController,它只接受viewcontroller但不能查看。任何人都可以告诉替代方案吗?请帮帮我。uiview导航

在此先感谢

+1

提供一些代码,很难知道什么是错的,没有它。 – Edu 2011-06-16 01:06:14

回答

2

如果您希望正确使用navigationController,您应该为每个视图设置不同的viewController

分开设置AcceptViewControllerServiceViewController。然后,从AcceptViewController,你可以创建一个ServiceViewController并将其推入堆栈如下:

-(void)showServiceView { 
ServiceViewController *serviceViewController = [[ServiceViewController alloc] init]; 
[self.navigationController pushViewController:serviceViewController]; 
[serviceViewController release]; 
} 
0

假设你既acceptViewserviceView参考,你可以通过删除一个作为子视图并添加另一种为homeViewControllerview的子视图,使这项工作。类似的,

[serviceView removeFromSuperview]; 
[self.view addSubview:acceptView]; 

移动到acceptView。如果你想回来,切换它们。然而,这种机制将是突然的。使用UIViewtransitionFromView:toView:duration:options:completion:方法为转换设置动画。喜欢的东西,

[UIView transitionFromView:serviceView 
        toView:acceptView 
        duration:0.5f 
        options:UIViewAnimationOptionTransitionFlipFromLeft| UIViewAnimationOptionCurveEaseInOut 
       completion:NULL]; 

这将删除serviceView,并添加acceptView作为子视图与过渡去了沿着。

+0

@din这是否有帮助?你需要进一步的帮助解决这个问题吗? – 2011-06-19 18:09:38