是否可以在mac应用程序的同一窗口中进行导航?(就像在ios应用程序中一样)。我想在同一个窗口中显示每个视图,而不是在按钮单击时打开不同的窗口。 例如,当用户点击按钮时,下一页应该被加载到同一个窗口中。(下一页与当前页面没有任何共同之处。)
答案 0 :(得分:1)
您可以使用标签视图在同一窗口中轻松切换视图。
更新:
您还可以自定义选项卡视图,使其成为表格(在属性检查器中将样式设置为tabless)并使用按钮在视图之间切换。 您可以通过以下链接获取帮助:http://devcry.heiho.net/2012/01/nstabview-tutorial.html
OR
您可以使用
在按钮点击时添加或删除窗口中的子视图[[yourWindow contentView] addSubview: yourSubview]; // Add subview to window
[yourSubview removeFromSuperview]; //Remove subview
更新:
使用tabless标签视图在视图之间切换的步骤。
将NSTabView拖到您的xib。
设置号码。属性检查器中的选项卡为no。你想要的意见。
根据您的要求设计标签的每个视图。
现在在tabview的属性检查器中,将样式设置为tabless。
现在拖动要用于在视图之间交换的按钮。假设Button0和Button1用于选项卡视图的第1和第2视图。
在.h文件中为您的NSTabView创建一个IBOutlet。将它绑定到tabview的引用插座。
IBOutLet NSTabView* tabview;
为.h类文件中的两个按钮设置IBAction。
在button1的按钮操作方法中,使用
- (IBAction)button1clicked:(id)sender
{
[tab selectTabViewItemAtIndex:0];
}
同样在button2操作方法中使用:
[tab selectTabViewItemAtIndex:1];
通过这种方式你可以有任何不。视图,您可以选择按钮单击使用任何视图 [tab selectTabViewItemAtIndex :(要加载的视图的索引)];
答案 1 :(得分:0)
一般情况下,您想谷歌进行视图交换。
那里有很多例子。一些来自Apple和其他地方。
其中大部分与iOS非常相似。
您还需要阅读文档。
了解NSView
以及如何从nib加载视图,如何在代码中创建视图对象,如何添加子视图以及如何删除视图。
出于不同的原因,有许多方法可以获得不同的观点。正确的方法是风格,经验和您的应用实际需要做的事情的组合。
Cocoa包括NSBox
,NSTabView
和许多其他人。这两个可以配置为不显示它们是容器的任何可视指示。
您还需要至少了解NSWindow
以了解其内容视图(通常是其他视图的根容器)