Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xcode 为OSX构建Cocoa UI_Xcode_Macos_Cocoa_Uistoryboard - Fatal编程技术网

Xcode 为OSX构建Cocoa UI

Xcode 为OSX构建Cocoa UI,xcode,macos,cocoa,uistoryboard,Xcode,Macos,Cocoa,Uistoryboard,我正在尝试构建一个如下所示的UI: 我正在使用带有Xcode的故事板,但我不知道如何开始。我认为需要在窗口中使用不同的视图来管理按钮、文本和树,但我不知道该怎么做。我曾尝试使用分割视图,但它只给了我2个视图,而不是3个 欢迎在Cocoa和故事板方面提供任何帮助 谢谢看不到您想在哪里使用NSSplitView,但是您试图创建的UI很简单- 一个普通的NSWindow,其中的工具栏项根据屏幕截图进行配置 具有三列的树状视图的NSOutlineView 相应调整窗口的大小,以便为要放置在窗口底部的

我正在尝试构建一个如下所示的UI:

我正在使用带有Xcode的故事板,但我不知道如何开始。我认为需要在窗口中使用不同的视图来管理按钮、文本和树,但我不知道该怎么做。我曾尝试使用分割视图,但它只给了我2个视图,而不是3个

欢迎在Cocoa和故事板方面提供任何帮助


谢谢

看不到您想在哪里使用
NSSplitView
,但是您试图创建的UI很简单-

  • 一个普通的
    NSWindow
    ,其中的工具栏项根据屏幕截图进行配置
  • 具有三列的树状视图的
    NSOutlineView
  • 相应调整窗口的大小,以便为要放置在窗口底部的标签腾出空间

如注释中所述,填充outline视图的一种方法是使用
NSTreeController
和。这可能是这个UI中唯一稍微复杂一点的部分。

我没有故事板的经验,所以我不确定这将如何进行,但据我所知,您可以通过创建一个工具栏来实现这一点,该工具栏将自动附加到顶部,并在那里放置一些按钮;然后在主区域中放置一个表视图(在滚动视图中),适当地放置它,并在窗口调整大小时告诉它调整大小;然后在底部和代码中为底部放置一个标签。@icktoofay,如果有比故事板更好的解决方案的话。让我知道。我从不在OSX上开发UI。在QT上,通过Qtcreator,您可以直观地创建内容,但OSX似乎更复杂,我甚至不知道故事板是什么,所以我不能说我的建议是否“更好”,但我只是在Interface Builder中描述了如何进行。使用NSTreeController、NSOutlineView和数据绑定。