我正在与
UISplitViewController合作,在那里我需要隐藏第一DetailViewController的MasterViewController。这意味着,当应用程序启动时,MasterViewController必须是隐藏的,而不需要单击任何UIButton。我试着在UIViewControllers.But中使用UIViewControllers,什么都没发生。之后,我尝试在UISplitViewController中开发整个应用程序。下面是我试图隐藏MasterViewController的代码
masterViewController = [splitViewController.viewControllers objectAtIndex:0];
detailVC = [splitViewController.viewControllers objectAtIndex:1];
[master.view setFrame:CGRectMake(0, 0, 0, 0)];
detail.view.frame = splitViewController.view.bounds; 我花了一周时间做这件事,但是没有worked.Please提供solution.It会是很大的乐趣。
更新:
当我将委托设置为详细视图控制器时,它隐藏了所有视图控制器的主视图控制器。以下是我添加
UISplitViewController的appDelegate代码。
self.splitViewController =[[UISplitViewController alloc]init];
MasterTableViewController *masterViewController=[[MasterTableViewController alloc]initWithNibName:@"MasterTableViewController" bundle:nil];
UINavigationController *masterNavigate=[[UINavigationController alloc]initWithRootViewController:masterViewController];
DetailViewController *detailVC=[[DetailViewController alloc]initWithNibName:@"DetailViewController" bundle:nil];
UINavigationController *detailNavigate=[[UINavigationController alloc]initWithRootViewController:detailVC];
self.splitViewController.viewControllers=[NSArray arrayWithObjects:masterNavigate,detailNavigate, nil];
self.splitViewController.delegate=detailVC;
self.window.rootViewController=self.splitViewController;在这里,我用Nex的代码将splitViewController的委托设置为detailVC.In detailViewController,我隐藏的是主视图控制器,当我从detailVC导航到其他视图时,它会隐藏主视图控制器。我知道这会让人恼火,但会有帮助的。
发布于 2014-08-18 08:03:29
- (BOOL)splitViewController:(UISplitViewController*)svc
shouldHideViewController:(UIViewController *)vc
inOrientation:(UIInterfaceOrientation)orientation
{
// this commant is used for showing or hiding the split view controller
svc.presentsWithGesture = TRUE;
return YES;
}
// dont forget to assign the delegate like this in viewWillAppear
(self.splitViewController.delegate = self;)发布于 2014-08-18 07:57:07
您可以使用此委托方法隐藏主VC。
- (BOOL)splitViewController:(UISplitViewController *)svc shouldHideViewController:(UIViewController *)vc inOrientation:(UIInterfaceOrientation)orientation
{
//Add your own logic to when you want the master VC hidden.
return YES;
}https://stackoverflow.com/questions/25358516
复制相似问题