【问题标题】:Problem using presentModalViewController in Ipad在 Ipad 中使用现有的模态视图控制器时出现问题
【发布时间】:2011-04-11 16:29:32
【问题描述】:

在我当前的 Ipad 应用程序中,我有一个分屏视图,其中详细视图是一个包含 4 个表格视图的滚动视图。我试图实现的功能是,当我在滚动视图中单击表格的任何行时,会显示一个包含其他信息的屏幕,我使用 presentModalViewController 来尝试获得此功能。

例如,我有 3 个文件 aViewController、bViewController、cViewController.. 我正在项目的 appDelegate 文件中编写 splitViewController 的代码,并将 3 个视图控制器(aViewController、bViewController、cViewController)作为子视图 拆分视图控制器...

现在在我的一个 ViewControllers 中,比如说 aViewController,在它的 didSelectRowAtIndexPath 中,我添加如下代码

这就是我所做的,

PopOverControllerContents *popContents = 
        [[PopOverControllerContents alloc] 
         initWithNibName:@"PopOverControllerContents" 
         bundle:[NSBundle mainBundle]];
 popContents.modalPresentationStyle = UIModalPresentationFormSheet;
[self presentModalViewController:popContents animated:YES

我要提到的重要一点是,我的应用的默认方向是横向模式,因此我将 PopOverControllerContents 的方向更改为横向。

当我构建和运行时,当我点击 aViewController 中的任何一行时,确实会弹出一个视图,但它完全不在位置,并且它的底部被切断了。

谁能告诉我我做错了什么以及如何纠正它?

【问题讨论】:

  • 当你说“它完全错位并且它的底部被切断”时,你是指表单本身还是表单中的内容?

标签: modalviewcontroller ipad


【解决方案1】:

[UIViewController presentModalViewController::] 假设您的视图控制器是根控制器,或者它位于控制器层次结构中的某个位置。当您说您的控制器视图是 SplitViewController 的子视图时,它们也是它的子控制器吗?您应该尝试从SplitViewController 显示模态控制器或检查您的控制器是否是子控制器(iOS 5 中的新功能)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-20
    • 1970-01-01
    • 1970-01-01
    • 2011-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多