Macos 如何在cocoa中的同一窗口中显示不同的视图?

Macos 如何在cocoa中的同一窗口中显示不同的视图?,macos,cocoa,Macos,Cocoa,可以在mac应用程序的同一窗口中进行导航吗?(就像在ios应用程序中一样)。我希望在同一窗口中显示每个视图,而不是单击按钮打开不同的窗口。 e、 g当用户单击按钮时,下一页应加载到同一窗口中。(下一页与当前页没有任何共同之处。)您可以使用选项卡视图在同一窗口上轻松切换视图 更新: 您还可以自定义选项卡视图,将其设置为tables(在“属性检查器”中将样式设置为tables)并使用按钮在视图之间切换。 您可以从以下链接获取帮助: 或 单击按钮时,可以使用添加或删除窗口中的子视图 [[yourWin

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

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

更新:

您还可以自定义选项卡视图,将其设置为tables(在“属性检查器”中将样式设置为tables)并使用按钮在视图之间切换。 您可以从以下链接获取帮助:

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

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

[yourSubview removeFromSuperview];   //Remove subview 
更新:

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

  • 将NSTAB视图拖动到xib

  • 将“属性检查器”中的选项卡数设置为所需的视图数

  • 根据需要设计选项卡的每个视图

  • 现在在选项卡视图的属性检查器中,将样式设置为tables

  • 现在拖动要用于在视图之间交换的按钮。假设按钮0和按钮1用于选项卡视图的第一个和第二个视图

  • 在.h文件中为NSTabView创建IBOutlet。将其绑定到选项卡视图的引用出口。
    ibnstabview*选项卡视图

  • 在.h类文件中为两个按钮设置iAction

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

    -(iAction)按钮1点击:(id)发件人

    {
    [选项卡选择选项卡查看项目索引:0];
    }

  • 同样,在按钮2动作方法中使用:

    [选项卡选择选项卡查看项目索引:1]

  • 通过这种方式,您可以拥有任意数量的视图,并且您可以使用单击按钮选择任意视图
    [tab selectTabViewItemAtIndex:(要加载的视图的索引)]

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

    更新:

    您还可以自定义选项卡视图,将其设置为tables(在“属性检查器”中将样式设置为tables)并使用按钮在视图之间切换。 您可以从以下链接获取帮助:

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

    [[yourWindow contentView] addSubview: yourSubview]; // Add subview to window
    
    [yourSubview removeFromSuperview];   //Remove subview 
    
    更新:

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

  • 将NSTAB视图拖动到xib

  • 将“属性检查器”中的选项卡数设置为所需的视图数

  • 根据需要设计选项卡的每个视图

  • 现在在选项卡视图的属性检查器中,将样式设置为tables

  • 现在拖动要用于在视图之间交换的按钮。假设按钮0和按钮1用于选项卡视图的第一个和第二个视图

  • 在.h文件中为NSTabView创建IBOutlet。将其绑定到选项卡视图的引用出口。
    ibnstabview*选项卡视图

  • 在.h类文件中为两个按钮设置iAction

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

    -(iAction)按钮1点击:(id)发件人

    {
    [选项卡选择选项卡查看项目索引:0];
    }

  • 同样,在按钮2动作方法中使用:

    [选项卡选择选项卡查看项目索引:1]

  • 通过这种方式,您可以拥有任意数量的视图,并且您可以使用单击按钮选择任意视图
    [tab selectTabViewItemAtIndex:(要加载的视图的索引)]

    一般来说,您希望通过谷歌进行视图交换。 有很多例子。有些来自苹果,还有很多其他地方。 其中大部分与iOS非常相似。 你也需要读一下这些文件。 了解
    NSView
    以及如何从NIB加载视图、如何在代码中创建视图对象、如何添加子视图以及如何删除视图

    出于不同的原因,有很多方法可以表达不同的观点。正确的方法是将风格、体验和应用程序实际需要的功能结合起来

    Cocoa包括
    NSBox
    NSTabView
    ,以及许多其他产品。这两个容器可以配置为不显示它们是容器的任何视觉指示。
    您还需要至少了解一点有关NSWindow的内容视图(通常是其他视图的根容器)

    一般来说,您希望通过谷歌进行视图交换。 有很多例子。有些来自苹果,还有很多其他地方。 其中大部分与iOS非常相似。 你也需要读一下这些文件。 了解
    NSView
    以及如何从NIB加载视图、如何在代码中创建视图对象、如何添加子视图以及如何删除视图

    出于不同的原因,有很多方法可以表达不同的观点。正确的方法是将风格、体验和应用程序实际需要的功能结合起来

    Cocoa包括
    NSBox
    NSTabView
    ,以及许多其他产品。这两个容器可以配置为不显示它们是容器的任何视觉指示。
    您还需要至少了解一点NSWindow的内容视图(通常是其他视图的根容器)

    我无法显示选项卡。当用户单击按钮时,下一页应加载到同一窗口中。这称为视图交换。NSTabView也不需要实际显示任何选项卡。请至少RTFM一点。我想这就是@Worker所要求的。在按钮单击上交换视图。是吗?@Neha是的,一次单击即可交换整个视图。是的,我已更新了相同的答案,您只需在按钮上设置操作,并在按钮单击时相应地从窗口中添加或删除视图。我无法显示选项卡。当用户单击按钮时,下一页应加载到同一窗口中。这称为视图交换