swift - NSToolbar 宽度 Bug with title.hidden

标签 swift nswindow nstoolbar nstoolbaritem

有没有人在隐藏标题可见性时遇到 NSToolbar 宽度相对于窗口宽度不正确?在应用程序退出并重新启动后,工具栏似乎没有保持正确的大小。

我在我的 NSWindow 子类中使用它:

self.window!.titleVisibility = NSWindowTitleVisibility.Hidden

在我的应用程序重新启动后执行此操作时,最右侧的工具栏项目没有紧贴窗口的边缘,我可以看到工具栏没有完全重绘...

最佳答案

我遇到了同样的问题。我通过删除工具栏并使用 GCD 再次设置相同的工具栏来解决这个问题(实际上稍后会执行)。

创建一个 NSWindow 的子类,并在 Interface Builder 中设置这个类。将此添加到您的 awakeFromNib:

-(void)awakeFromNib
{
    self.titleVisibility = NSWindowTitleHidden;

    NSToolbar* toolbar = self.toolbar;
    self.toolbar = nil;
    dispatch_async(dispatch_get_main_queue(), ^{
        self.toolbar = toolbar;
    });
}

关于swift - NSToolbar 宽度 Bug with title.hidden,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28874520/

相关文章:

swift - 保持窗口始终在顶部?

cocoa - 调整窗口 View 大小时应正确调整大小

swift - 获取 NSToolbar 的特定项目

objective-c - NSToolbarItem 图像缩放

xcode - NSToolbar特殊区域

ios - 从函数的返回类型推断类型为泛型

类不符合 swift 协议(protocol)

swift - 如何替换 position++ 代码以使其与 Swift 3 兼容?

ios - 如何使用 SwiftyJSON 和 Alamofire 解析 JSON 字典

objective-c - 将 NSView 添加到窗口而不是在顶部?