CNContactViewController不会跨越整个宽度

时间:2017-01-30 21:47:27

标签: swift xcode macos cocoa cncontactviewcontroller

我在CNContactViewControllerNSTabViewController中使用NSPopover。在这两种情况下,ViewController的大小都太小(请参见屏幕截图中的红色)。

其他标签使用所有可用空间,就像人们期望的那样。

enter image description here

我尝试在viewWillAppear上设置ViewController的框架,但忽略了这一点:

override func viewWillAppear() {
    for i in tabViewItems{
        if let vc = i.viewController as? CNContactViewController{
            vc.contact = CNContact.dummyContact()
            vc.view.frame = view.frame
            vc.view.layer?.backgroundColor = NSColor.red.cgColor
            view.layer?.backgroundColor = NSColor.green.cgColor
        }
    }
}

在弹出框中,高度相同:

same-problem

更新

我在启动应用时遇到此错误,但是,我无法访问ABRemotePersonView上的约束,所以我不知所措。

  

[133:9106090] [布局]检测到<ABRemotePersonView: 0x6080001411e0>的缺失约束。它无法放置,因为没有足够的约束来完全定义大小和原点。添加缺少的约束,或设置translatesAutoresizingMaskIntoConstraints=YES,将为您生成约束。如果此视图是在 macOS 10.12 上手动设置的,您可以选择不从覆盖中调用[super layout]。在DETECTED_MISSING_CONSTRAINTS上设置断点以进行调试。此错误仅记录一次。

0 个答案:

没有答案