【问题标题】:UISplitViewController - Wrong detail view sizingUISplitViewController - 错误的详细视图大小
【发布时间】:2014-09-01 09:03:42
【问题描述】:

我正在维护一个通用 iOS 应用程序,它的开发已经在 iOS 6 上开始。我正在为 iOS 7 更新 UI。现在我在应用程序的 iPad 部分遇到了一个奇怪的问题。这部分遵循使用 UISplitViewController 的“正常”主从视图模式。 UI 在情节提要中配置。 UISplitViewController 是 Apple 文档要求的根视图控制器。 奇怪的部分来了:当细节视图控制器嵌入到 UINavigationController 中时,导航控制器的大小会被 UISplitViewController 错误地调整,因此整个界面看起来很糟糕。即使设备方向是横向,导航控制器似乎也保持纵向。在纵向上,细节视图控制器看起来不错。
如果我避免在导航控制器中嵌入详细视图控制器并将其作为详细视图控制器直接连接到 UISplitViewController,那么一切都可以在两个方向上完美运行。 我试图在一个简单的示例应用程序中重现这个问题,该应用程序基于 Apple 提供的 Master-Detail 项目模板,但没有成功。即使在导航控制器中嵌入详细视图控制器,它也可以工作。到目前为止,无论我尝试过什么(寻找干扰的类别、旋转设置、方法调配等),我都找不到导致此问题的原因。由于我的选项不多了(如果可能的话,我宁愿避免滚动我的容器视图控制器),我恭敬地询问附近是否有人对此问题有解决方案或有关如何追踪问题的进一步想法。

提前致谢 蒂诺

【问题讨论】:

    标签: ios uisplitviewcontroller detailview


    【解决方案1】:

    找到解决我自己问题的方法。我在 UISplitViewController 上创建了一个类别,并添加了一个方法“detailViewController”,只是为了作为访问详细视图的便捷方法。不幸的是 UISplitViewController 有一个同名的内部方法正在替换。我是否会遵循 Apple 的指南来始终为类别方法添加前缀以避免名称冲突,我会节省大量时间。 :(

    【讨论】:

    • 感谢上帝,我发现你发布了这个。也为我节省了大量时间。如果像这样的关键方法被意外覆盖,我希望 NSLog 会通知您 - 但我想前缀是目前最好的解决方案。
    猜你喜欢
    • 2013-02-24
    • 2015-08-16
    • 2016-07-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多