- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
你好,我已经看到这个问题被问过几次了,但还没有明确的答案,所以我为 xcode 7 和 swift2 创建了它(无论如何这可能已经改变了一些东西)。
我使用 Xcode 7 和 Cocoa OSX Story boards + swift2 创建了一个项目,所以我的项目从一个连接到 NSViewController 的 NSWindowController 开始(正如预期的那样!)。我向我的窗口 Controller 添加了一个 NSToolbar,并向工具栏添加了一个 NSButton。我将我的 NSViewController 更改为新的 NSSplitViewController 之一,它链接到三个 NSViewController 并水平显示它们的 View - 带有垂直分隔线 - (类似于您在优胜美地 + 中的照片应用程序或页面)。我的最终目标是我的工具栏中的按钮显示和隐藏第一个拆分。
我的理解是,我希望为了实现这一点,我应该在 NSSplitViewController 中创建一个操作,或多或少地改变自动布局约束,它们在这里的工作方式:How to do collapse and expand view in mac application? .
然后以某种方式将此操作链接到工具栏中的 NSButton...它恰好在 NSWindowController 中(远在层次结构中并被隔离)...
我已经解决了有关 NSToolbar 和 Storyboard的其他问题,但未能实现我的目标:
Apple 在 WWDC15 中确实(再次)提到他们为 osx 和拥有 View Controller 的 Split View Controller 创建了 Storyboard,以便您可以将逻辑和工作转移到特定的 View Controller ,所以我期待在我的 Split View Controller 中执行所有操作,因为这是需要更改的目标。
有谁知道如何从 View Controller 本身实现这一点?我真的没能找到将我的 ToolBarItem 连接到它的方法。
最佳答案
好吧,我几天前就提出了这个问题,但到目前为止还没有答案,所以我用我最近为解决这个问题所做的工作来回答。
在我创建我的 Xcode 项目后,我这样做了:
为每个 NSSplitViewItem 添加了一个 IBOutlet。例如:
@IBOutlet weak var mySplitViewItem: NSSplitViewItem!
为 NSWindowController 创建了一个子类 WindowController
添加了获取窗口 Controller 内容的属性,如 MySplitViewController
var mySplitViewController: MySplitViewController { 返回 self.window?.contentViewController 作为!我的 Split View Controller
现在我可以在我创建的操作中从窗口 Controller 访问 Split View Controller 的属性:
我的 Split View Controller 。 mySplitViewItem.collapsed = true
我创建了一些示例代码来执行此操作(但是使用 View Controller 并更改标签的文本 here ,以防万一有人想看到具有此行为的工作项目。还有一个关于它的 blog post :)
关于macos - Xcode 7 中的 NSToolbar 使用 Storyboard(NSWindowController -> NSSplitViewController),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31023537/
我想为我的 NSToolbar 制作一个图标,其应用的系统样式与 IB 中的模板图标相同。你怎么做到这一点?我无法让工具栏应用系统样式,就像 HIG 中所说的那样。 谢谢! 最佳答案 在 Mac OS
我想在NSToolbar中添加两个感人的项目,例如前进和后退按钮。 ,像这样: NSToolbar似乎默认为每个项目添加水平边距,如下所示: 我查看了 toolbarItem 下的 XIB 源代码节点
我正在制作一个 Cocoa 应用程序,带有隐藏的统一 NSToolbar 和 Titlebar。我通过在窗口 Controller 中添加一个工具栏并设置所有选项以使其不可见并保留 3 个彩色按钮来完
我的工具栏(NSToolbar)上有一个复选框,如下图所示。它的操作被调用,并且 sender.state 在每次推送时都会切换,但在工具栏上,该框永远不会被选中。 因此,切换方面的预期行为以及被调用
我正在开发一个应用程序,用户可以使用按钮显示/隐藏工具栏。问题如下:如果用户选择隐藏工具栏然后进入全屏模式,则会显示工具栏。 用户界面已通过编程方式创建(即不使用 Interface Builder)
我已经为 mac 创建了桌面应用程序。我想在自定义工具栏上放置一些图像和项目名称。我不知道如何实现这些东西。您能给我一些建议吗?提前致谢。 最佳答案 在界面生成器中,双击工具栏上的空白区域,它将打开。
我在窗口中添加了一个 NSToolBar。它固定在 window 的顶部,但我需要把它放在底部。我该怎么做? 最佳答案 据我所知,你不能。 NSToolbars 只能附加到窗口的顶部。如果您希望在窗口
我有带有字体项目的 NSToolbar 。是否可以在字体表中设置字体过滤器?例如,我不想在字体系列表中使用Arial。 或者第二种方式 - 是否可以在字体集合中创建自己的组?谢谢4回复。 最佳答案 您
我是Mac开发的初学者。我正在使用工具栏开发一个应用程序。我只是想在工具栏中添加两个自定义按钮。 工具栏将如下所示。我已经尝试过使用 XIB,但我没有得到这个东西,.,. 对此有任何想法。 提前致谢
我对 OS X 应用程序开发比较陌生,我想知道是否可以将背景图像放入 NSToolbar,例如 Game Center.app 或 Calender.app(iCal.app) 中?我环顾四周,在这里
我创建了一个应用程序,在其中实现了自定义工具栏,并且在该工具栏中放置了一个自定义项目。但我无法点击它;表明 它已被禁用。如何解决这个问题? 最佳答案 如果工具栏按钮默认处于禁用状态,并且您尚未实现 N
我需要检测 NSToolbar 是否已创建(或将创建)溢出菜单,并可能调整窗口大小以使溢出消失。但我找不到一种简单的方法来检测是否发生了溢出。 最佳答案 NSToolbar 有两种方法可以用来解决这个
我创建了一个 NSToolbar,它在 Interface Builder 中包含一些项目(并设置了它们的可见性优先级)。当我调整窗口大小时,项目会根据预期的优先级被删除,但会出现一个带有空菜单的溢出
在我的项目中,我有一个 NSToolBar,它有 5 个 NSToolBarItems。我想删除最后两个工具栏项目,其中一个是 NSToolbarSpaceItemIdentifier,然后再次重新加
NSToolbar 可以有两种尺寸,由用户使用“使用小尺寸”菜单项控制。常规工具栏尺寸要求每个项目的图标尺寸为 32x32,而小尺寸则使用 24x24。我不希望图标默认缩放,因为每个工具栏尺寸都有一对
我正在尝试制作一个可以在任何地方使用的自定义工具栏。我希望背景看起来像 nstoolbar 的灰色。该颜色用在多个地方,例如 Safari 或 Mail 的顶部。 有谁知道有什么简单的画法吗?或者在窗
Designing Toolbar Icons ' OS X Human Interface Guidelines 的部分说系统对工具栏中的图标应用了改变其外观的效果。换句话说,我们必须创建一个纯黑色
正如您从屏幕截图中看到的,“查看”按钮文本在“允许的工具栏项目”下正确对齐,但是当我将其添加到工具栏后,它会向右对齐。为什么? 最佳答案 您必须为工具栏项目设置合理的最小和最大尺寸。我认为您还必须确保
我遇到了这种奇怪的行为。我正在使用一个带有文本的面板,当应用程序等待某些信息时向用户显示。该面板以模态方式显示,以防止用户单击某些内容。 当加载面板隐藏时,工具栏上的所有项目都将被禁用,并且不会调用
如果我通过小尺寸、图标和文本更改应用程序中 NSToolbar 的大小,则应用程序会因不满足的约束而制动(尝试关闭自动布局,或让应用程序生成其布局) 我的窗口由工具栏和内部(左/右)分割 View 组
我是一名优秀的程序员,十分优秀!