XCode:MasterDetailsView - 在View中没有Splitscreen的DetailsView?

时间:2012-07-14 23:02:19

标签: ios xcode pdf ios5 detailsview

实际上我对Xcode很新,并且无法通过谷歌搜索找到以下两个问题的答案:

  1. 简而言之:我正在开发一个显示提案的iPad应用。为此,您应该从MasterView中的表中选择一个提议,然后在横向模式下查看DetailsView中的详细信息(但没有Spitscreen上的MasterView)。 因此,当应用程序以横向模式启动时,我想在DetailsView上直接看到第一个提案全屏。当我点击屏幕时,MasterView应该弹出/取消隐藏表中的其他提议。这可能吗?

  2. 我想在iBooks中的WebView中显示PDF。这意味着导航栏是隐藏的,只有当我点击屏幕时,导航栏才会显示在屏幕顶部。

  3. 我确定这个问题已经解决了,但我找不到任何搜索,所以我希望你能帮助我: - )

    提前致谢!

1 个答案:

答案 0 :(得分:1)

Q1:使用可以使用多种方法之一来呈现视图(在“呈现另一个视图控制器的内容”标题下的UIViewController上的Apple's doc下查找)。我使用的两个是:– presentModalViewController:animated:– presentViewController:animated:completion:(后者是iOS 5.0中的最新版本)

所以假设你有一个名为MyDetailViewController的详细控制器,在你的主视图控制器的实现文件(.m文件)中,在viewDidLoad方法下,你会做这样的事情来呈现它作为全屏视图。

MyDetailViewController *myDetailViewController = [[MyDetailViewController alloc] initWithNibName:@"MyDetailViewController" bundle:nil];
[myDetailViewController.view setFrame:CGRectMake(0, 0, 1024, 768)];   //might not need this
[self presentViewController:newDetailViewController animated:YES completion:^{
        NSLog(@"complete");  //optional
    } ];

要通过点按或触摸来关闭或隐藏此MyDetailViewController,您可以使用UITapGestureRecognizer或touchesEnded方法并使用其中一种解除方法(请再次参阅Apple的UIViewController)。

Q2:我个人没有使用UIWebView来显示PDF,也不确定iBooks是否正在使用UIWebview来执行此操作。但要显示各种流行的文档格式,您可以使用QLPreviewController类或UIDocumentInteractionController。您可以在显示文档时隐藏工具栏。

祝你好运。