1

是否可以在 mac 应用程序的同一个窗口中进行导航?(就像在 ios 应用程序中一样)。我想在同一个窗口中显示每个视图,而不是在单击按钮时打开不同的窗口。例如,当用户单击按钮时,应在同一窗口中加载下一页。(下一页与当前页面没有任何共同之处。)

4

2 回答 2

1

您可以使用选项卡视图在同一窗口上的视图之间轻松切换。

更新:

您还可以自定义您的选项卡视图,使其成为表格(在属性检查器中将样式设置为表格)并使用您的按钮在视图之间切换。您可以从以下链接获得帮助:http: //devcry.heiho.net/2012/01/nstabview-tutorial.html

或者

您可以在单击按钮时从窗口中添加或删除子视图,使用

[[yourWindow contentView] addSubview: yourSubview]; // Add subview to window

[yourSubview removeFromSuperview];   //Remove subview 

更新:

使用表格选项卡视图在视图之间交换的步骤。

  1. 将 NSTabView 拖到您的 xib 中。

  2. 设置编号。属性检查器中的选项卡数量为否。您想要的视图。

  3. 根据您的要求设计选项卡的每个视图。

  4. 现在在tabview的属性检查器中,将样式设置为tabless。

  5. 现在拖动要用于在视图之间交换的按钮。假设 Button0 和 Button1 用于标签视图的第一个和第二个视图。

  6. 在 .h 文件中为 NSTabView 创建一个 IBOutlet。将其绑定到您的 tabview 的引用插座。 IBOutLet NSTabView* tabview;

  7. 在 .h 类文件中为两个按钮设置 IBAction。

  8. 在 button1 的按钮操作方法中,使用

    - (IBAction)button1clicked:(id)sender

    { [tab selectTabViewItemAtIndex:0]; }

  9. 同样在 button2 动作方法中使用:

    [选项卡选择TabViewItemAtIndex:1];

这样你就可以有任何没有。视图,您可以使用 [tab selectTabViewItemAtIndex:(您要加载的视图的索引)] 选择按钮单击的任何视图;

于 2013-10-28T08:27:24.463 回答
0

一般来说,你想用谷歌搜索视图交换。那里有很多例子。一些来自 Apple 和很多其他地方。其中大部分与iOS非常相似。您还需要阅读一下文档。了解NSView以及如何从 nib 加载视图、如何在代码中创建视图对象、如何添加子视图以及如何删除视图。

由于不同的原因,有许多方法可以产生不同的观点。正确的方法是结合风格、体验和您的应用实际需要做的事情。

Cocoa 包括NSBoxNSTabView和许多其他内容。这两个可以配置为不显示它们是容器的任何视觉指示。您还需要至少了解一点NSWindow才能了解它的内容视图(一般是其他视图的根容器)

于 2013-10-28T09:27:15.373 回答