我已经学会了Cocoa + Objective C主要用于iPhone开发,我需要利用这个技能集在几天内为OS X构建一个非常基本的自助服务终端应用程序.申请基本如下:
该设置有两个触摸屏显示器,应用程序必须运行全屏模式.右侧的监视器充当左侧选项列表的详细视图.左侧显示器上有3个选项.挑选一个将在右边播放一部电影,挑选两个将带你进行一个测验,Picking 3将拉出一个Webview.
用户不得在PC上使用任何其他操作.(我开始阅读有关OS X应用程序开发的内容,并意识到Cocoa为这些类型的应用程序提供了一个kiosk模式)
我的问题简要说明了
首先,非常感谢有关如何让我的应用程序在自助服务终端模式下运行的任何帮助!我有点时间紧张(2天完成所有这些,谈论初创公司的生活!),所以完全静态内容很好,我有点担心OS X如何处理全屏模式应用程序已编写为较小的窗口大小.(缩放等)
接下来,假设有两个窗口,每个屏幕上有一个窗口,我该如何处理焦点?如果用户突然对右侧的内容感到厌倦并触摸左侧的窗口,则第一次触摸可能会使窗口聚焦,第二次触摸将作为按钮的单击.我想避免这种情况!)
OS X中的导航范例是什么?我猜它不是那么简单[navigationController pushViewController]
?简而言之,如何在现有视图上显示新视图?
谢谢,
Teja
首先,非常感谢有关如何让我的应用程序在自助服务终端模式下运行的任何帮助!
http://developer.apple.com/library/mac/#technotes/KioskMode/
接下来,假设有两个窗口,每个屏幕上有一个窗口,我该如何处理焦点?如果用户突然对右侧的内容感到厌倦并触摸左侧的窗口,则第一次触摸可能会使窗口聚焦,第二次触摸将作为按钮的单击.我想避免这种情况!)
点击是默认值.如果您有任何自定义视图,响应acceptsFirstMouse:
与YES
支持点击通过在其中.
OS X中的导航范例是什么?
通常基于窗口或基于源列表.您的申请是非典型的.
我猜它不是那么简单
[navigationController pushViewController]
?
它同时更简单,更复杂.没有堆栈可供管理; 你可以同时拥有多个窗口.当您想要在一个窗口中的所有内容时(例如在您的kiosk模式应用程序中),它会变得更加复杂,在这种情况下,您最终使用选项卡视图(带或不带选项卡)来使用户能够从一个视图切换到另一个视图.
简而言之,如何在现有视图上显示新视图?
你没有.在AppKit中几乎不支持在同一个superview中将一个视图分层放在另一个视图上,而且几乎总是错误的.
在正常的应用程序中,您应该创建多个窗口.在像您这样的应用中,您需要使用标签视图.虽然NSViewControllers 与UIViewControllers 非常不同(我提到过,没有视图堆栈),但视图控制器可以在这里提供帮助.它们与NSWindowControllers更相似.