代码之家  ›  专栏  ›  技术社区  ›  Tejaswi Yerukalapudi

Kiosk应用程序-OS X编程-多监视器

  •  5
  • Tejaswi Yerukalapudi  · 技术社区  · 14 年前

    我已经学习了Cocoa+目标C,主要用于iPhone开发,我需要利用这一技能集在几天内为OS X构建一个非常基本的信息亭应用程序。应用程序基本如下:

    • 安装程序有两个触摸屏监视器,应用程序必须运行全屏模式。右侧的监视器充当左侧选项列表的详细视图。显示器左侧有3个选项。选择一个将播放右侧的电影,选择两个将带您参加测验,选择3将拉上一个网络视图。

    • 用户不能在PC上使用任何其他操作。(我已经开始阅读关于OS X应用程序开发的内容,并意识到Cocoa为这些类型的应用程序提供了一种信息亭模式)

    我的问题很简单

    • 首先,对于如何让我的应用程序运行在报摊模式的任何帮助都非常感谢!我有点时间紧张(两天时间来完成这一切,谈谈初创企业的生活!),所以完全静态的内容是可以的,我有点担心如果一个应用程序是用较小的窗口大小写的,那么OSX将如何处理全屏模式。(缩放等)

    • 接下来,假设有两个窗口,每个屏幕一个,我该如何处理焦点?如果用户突然对右边的内容感到厌烦,并触摸左边的窗口,第一次触摸可能会使窗口聚焦,第二次触摸则会使按钮点击。我想避免这种情况!)

    • OSX中的导航模式是什么?我猜这不是那么简单 [navigationController pushViewController] ?简而言之,如何在现有视图上显示新视图?

    谢谢,
    特加

    1 回复  |  直到 14 年前
        1
  •  6
  •   Peter Hosey    14 年前

    首先,对于如何让我的应用程序运行在报摊模式的任何帮助都非常感谢!

    http://developer.apple.com/library/mac/#technotes/KioskMode/

    接下来,假设有两个窗口,每个屏幕上都有一个,那么如何处理焦点呢?如果用户突然对右边的内容感到厌烦,并触摸左边的窗口,第一次触摸可能会对窗口进行聚焦,第二次触摸则会对按钮进行单击。我想避免这种情况!)

    Click-through 是默认值。如果您有任何自定义视图,请响应 acceptsFirstMouse: 具有 YES 要支持,请在其中单击。

    OSX中的导航模式是什么?

    通常基于窗口或基于源列表。你的申请不典型。

    我猜这不是那么简单 [navigationController pushViewController] ?

    它既简单又复杂。没有要管理的堆栈;您可以同时打开多个窗口。当你想要所有的东西都在一个窗口中时(就像在你的Kiosk模式应用程序中一样),它会变得更加复杂,在这种情况下,你最终会使用选项卡视图(有或没有选项卡)来允许用户从一个视图切换到另一个视图。

    简而言之,如何在现有视图上显示新视图?

    不支持。在同一个超级视图中,将一个视图与另一个视图分层在AppKit中几乎完全不受支持,而且几乎总是错误的。

    在普通应用程序中,您应该创建多个窗口。在像你这样的应用中,你需要使用标签视图。尽管nsviewcontrollers 非常 不同于uiviewcontrollers(正如我提到的,没有视图堆栈);它们更类似于nswindowcontrollers。