我从很长一段时间内谷歌曲,但没有得到解决方案,在iOS 5.1主视图上右侧滑动,左上滑动。

我想要加载主视图按钮单击详细视图,如何?

下面的代码是为我工作的,主视图隐藏,但主视图的黑屏尺寸仍然是主视图。

- (void)hideMaster:(BOOL)hide {

  AppDelegate *appDelegate=(AppDelegate *)[[UIApplication sharedApplication] delegate];
 UISplitViewController* spv = appDelegate.splitViewController;
 spv.delegate=self;
 self.hiddenMaster= hide;
 [spv willRotateToInterfaceOrientation:self.interfaceOrientation duration:0];
 [spv.view setNeedsLayout];     
 }


- (BOOL)splitViewController:(UISplitViewController*)svc shouldHideViewController: (UIViewController *)vc inOrientation:(UIInterfaceOrientation)orientation {

NSLog(@"Spv: I do %@show the master", (self.hiddenMaster?@"not ":@""));

return self.hiddenMaster;
}
.

提前感谢

有帮助吗?

解决方案

标准方式,正如我理解它,这样做是:

  1. 在您的应用程序中,您需要将一个初始视图控制器设置为UISplitViewControllerDelegate。如果您不这样做,如果您以纵向启动应用程序将无法获得第一个按钮。例如:

    UINavigationController *masterNavigationController = [self.splitViewController.viewControllers objectAtIndex:0];
    MyMasterVC *master = [self.masterNavigationController.viewControllers objectAtIndex:0];
    self.splitViewController.delegate = master;
    
  2. 在mymastervc.h中,通过修改界面,将自己声明为<UISplitViewControllerDelegate>,例如:

    @interface MyMasterVC : UIViewController <UISplitViewControllerDelegate>

  3. 在myMasterVC.M中,您需要实现UISplitViewControllerDelegate的各种方法,这些方法是在Apple文档中描述的

  4. 隐藏和显示视图控制器的方法为您提供了一个UIBARButtonItem,然后您必须添加到您的详细视图控制器(例如,UIToolbar或UinavigationBar)中添加或带走。

    如果您在处理此问题的情况下有问题,它在斯坦福大学的优秀保罗赫阁(2010年秋季2011年秋季 - 不记得)中,它在伊努格特的讲座中很好。你应该看看。 iOS5.1已更改了MasterVC在课程中的严格“Popover”方式中呈现的方式,但我认为所描述的方法仍然有效。它在课程中很早,也可能是5或6或7或类似的讲座。我认为它被称为拆分视图,或iPad拆分视图或类似。

    编辑: 这是第7讲,它被称为:“uitoolbar和ipad apps”

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top