2011-09-24 62 views
1

我有一个标签栏和工具栏上的搜索按钮。所以现在每当用户点击搜索我想要一个视图(presenetmodalviewcontroller),但目前的模态视图控制器覆盖整个屏幕是否有任何方式,它只覆盖当前视图(即在当前标签栏中查看)?现在我怎么能做到这一点?presentmodalviewcontroller - 如何不让它覆盖整个屏幕?

感谢, 图莎尔Chutani

+0

你最终解决这个问题? – bryanmac

+0

是的,我确实谢谢 –

+0

添加解答来回答 –

回答

0

所以这是我能够做到不是最好的代码,但它的工作原理是什么我已经几乎做的是addsubview到一个UIImageView(应该使用的UIWindow,但谁在乎呢?)

-(void)revers{ 

[UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationDuration:0.3]; 
NSLog(@"Revenre is called"); 
otherViewImage.transform = CGAffineTransformMakeTranslation(0,-380); 
[otherViewImage addSubview:hup.view]; 
[UIView commitAnimations]; 

} 
0

根据定义,一个模式视图控制器是为了“中断”别的应用程序的当前流量(请求的用户名/密码,要求联系人发送电子邮件等)。您可以在View Controller Programming Guide中阅读更多关于此的内容。

您最好在当前选项卡内使用导航堆栈(UINavigationController)来处理必须呈现给用户的其他viewController。这里是another stack overflow question关于如何将导航控制器放置在标签栏应用程序中。通过导航堆栈,您可以推送视图控制器(pushViewController:animated:),并为单个选项卡项目管理viewController的无限深度。

0

一个选项是在tabbar内的视图位于NavigationController中。然后,而不是presentModalViewController,你可以将ViewController放到堆栈上。这将使tabBar在底部可见,并允许您导航回去。

但是,这并没有将导航条添加到顶部。不知道这是否是您的应用程序的问题。