2010-09-26 65 views
5

我已經學會了Cocoa + Objective C主要用於iPhone開發,並且我需要利用此技能在幾天內爲OS X構建一個非常基本的Kiosk應用程序。該應用程序基本如下:Kiosk應用程序 - OS X編程 - 多顯示器

  • 設置有兩個觸摸屏顯示器,該應用程序必須運行全屏模式。右側的監視器充當左側選項列表的詳細視圖。左側顯示器上有3個選項。選擇一個會在右邊播放電影,Picking 2會帶你參加一個測驗,Picking 3會拉起一個Webview。

  • 用戶不得在PC上使用任何其他操作。 (我開始閱讀關於OS X應用程序開發和實現可可提供kiosk模式爲這些類型的應用程序)

我的問題是短暫

  • 首先,如何獲得任何幫助我的應用程序運行在Kiosk模式非常感謝!我處於一段時間緊張狀態(2天完成所有這些,談論初創公司的生活!),所以完全靜態的內容是好的,我有點擔心OS X將如何處理全屏模式,如果應用程序已被寫入較小的窗口大小。 (縮放等)

  • 接下來,假設有兩個窗口,每個窗口上一個窗口,我該如何處理焦點?如果用戶突然對右側的內容感到厭倦並觸摸左側的窗口,則第一次觸摸可能用於聚焦窗口,而第二次將用作點擊按鈕。我想避免這種情況!)

  • 什麼是OS X中的導航範例?我猜這不像[navigationController pushViewController]那麼簡單?總之,如何在現有視圖上顯示新視圖?

感謝,
Teja公司

回答

6

首先,如何讓我的應用程序在Kiosk模式運行的任何幫助深表感謝!

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

接下來,假設有兩個窗口,一個在每個屏幕上,我該如何處理重點是什麼?如果用戶突然對右側的內容感到厭倦並觸摸左側的窗口,則第一次觸摸可能用於聚焦窗口,而第二次將用作點擊按鈕。我想避免這種情況!)

Click-through是默認設置。如果您有任何自定義視圖,請使用YES響應acceptsFirstMouse:以支持其中的點擊。

什麼是OS X中的導航範例?

通常是基於窗口的或基於源列表的。你的應用程序是非典型的。

我猜這不像[navigationController pushViewController]那麼簡單?

它更簡單和更復雜的同時。沒有堆棧要管理;你可以同時擁有多個窗口。當你想在一個窗口中顯示所有內容(如在你的信息亭模式應用程序中)時,它會變得更加複雜,在這種情況下,最終你將使用標籤視圖(帶或不帶標籤)來使用戶從一個視圖切換到另一個視圖。

總之,如何在現有視圖上顯示新視圖?

你不知道。在AppKit中幾乎不支持在同一個超級視圖中覆蓋另一個視圖,而且幾乎總是錯誤的。

在正常的應用程序中,您應該製作多個窗口。在像你這樣的應用中,您需要使用選項卡視圖。視圖控制器可能會幫助你在這裏,雖然NSViewControllers是非常不同於UIViewControllers(正如我所提到的,沒有視圖堆棧);它們更類似於NSWindowControllers。

+0

謝謝!這對我來說是一個很好的幫助,但仍然有相當多的想法。在我走的時候會回答更具體的問題。 – 2010-09-27 17:22:26

+0

不幸的是,這篇文章讓讀者在與NSViewControllers,NSWindowControllers掙扎了一天之後閱讀它更有意義。再次感謝! – 2010-09-28 18:46:08