当前位置: 首页 > 面试题库 >

打开UISplitViewController到主视图而不是详细信息

赵俊晤
2023-03-14
问题内容

我有一个目标iPhone 6应用程序的拆分视图界面。在首次启动该应用程序时,它将打开到“详细信息视图”。我希望它可以打开“主视图”。我努力了:

self.splitViewController?.preferredDisplayMode = UISplitViewControllerDisplayMode.PrimaryOverlay

这是在其他地方建议的,但是它似乎没有任何作用,并且在启动时不会打开Master视图。我还尝试将以下行添加到我的AppDelegate中:

splitViewController:collapseSecondaryViewController:ontoPrimaryViewController:

但是,尽管返回true或false另一个先前的堆栈溢出问题,我还是没有成功。

我确实在Xcode中启动了示例Master-Detail应用程序,并基于splitViewController将其加载到Master视图中。但是,我不确定如何以更复杂的布局进行这项工作。


问题答案:

迅速

UISplitViewController在纵向细节上方显示主视图并不是要显示主视图,而是要在主视图下方以全角显示“细节”视图。

[iPhone上的肖像中的UISplitViewController显示了详细的VC而不是master是关于合拢机制的原理。

目前的答案是:

  • 母版→详细信息 (紧凑宽度)
    • iPhone 4s,5、5s,SE,6、6s,7(任何方向)
    • iPod Touch
    • 任何iPhone Plus(肖像)
  • 并排 (所有其他尺寸)
    • iPad
    • 任何iPhone Plus(横向)

您必须设置preferredDisplayMode。您想要的是 .primaryVisible 它是否存在!如果只适合1个视图 (紧凑宽度)
,则使用.allVisibleiOS选择。以该大小,下面的代码将选择。Detail __Master

关键是要改变 双方preferredDisplayMode.allVisible_和_返回truecollapseSecondary:onto

class PrimarySplitViewController: UISplitViewController,
                                  UISplitViewControllerDelegate {

    override func viewDidLoad() {
        super.viewDidLoad()
        self.delegate = self
        self.preferredDisplayMode = .allVisible
    }

    func splitViewController(
             _ splitViewController: UISplitViewController,
             collapseSecondary secondaryViewController: UIViewController,
             onto primaryViewController: UIViewController) -> Bool {
        // Return true to prevent UIKit from applying its default behavior
        return true 
    }
}


 类似资料:
  • 问题内容: 我希望我的JFileChooser从详细信息视图开始,而不是从其开始的“列表”视图开始。您如何做到这一点? 问题答案: 您可以从ActionMap获取Action:

  • 我对Android不熟悉,几乎没有时间做作业,所以我想我会使用“模板”,比如“主/细节流”来加快我的工作速度。也许这不是最好的决定,因为我需要很长时间才能理解给定的代码,即使现在我仍然什么都不理解...但是现在从头开始已经太晚了。 我有一个食谱列表,当一个食谱被点击时,我可以看到细节(用主/细节-模板完成)。一个食谱有一个配料列表和一个描述如何准备它的字符串。我写了一个自定义适配器来显示细节片段中

  • 我想创建一个用户注册表单,在这里,我允许用户可以像谷歌联系人一样,随意放置电子邮件和电话。 我已经创建了一个表单,允许用户动态添加或删除电子邮件和电话的输入字段。这是它的图像:用户注册表 这是我使用的模型脚本。。 这是我使用的控制器脚本... 我运行这个代码,它给我错误说数组到字符串转换,我不能存储任何数据到数据库。 更新: 下面是我得到的错误: 我用于此目的的表格: 表\u用户(id、姓名、用户

  • 我不明白为什么它没有打印我应该通过查询获得的所有行。它应该继续在更多页中打印,直到显示所有行。有什么想法吗?

  • 在当前版本中,您不仅可以查看AssetBundle文件的包含资源信息和依赖关系信息,同时还可以查看每种资源的详细使用信息。目前,UWA资源检测服务对于主流资源的支持如下: 纹理资源 对于纹理资源,UWA可以提供以下重要信息:分辨率、资源格式、内存占用、Mipmap功能是否开启 和 Read/Write是否开启。这些均为影响纹理文件尺寸和内存占用的重要因素。因此,我们将其在此进行详细展示,您可以对每