2011-04-22 85 views
1

我正在嘗試構建一個應用程序,其中只需要設備旋轉值。我希望應用程序支持儘可能低,所以如果設備具有其硬件(iPhone 4)或從加速度計(iPhone 3G & 3GS)獲取值,我首選從陀螺儀讀取數值。從陀螺儀或加速度計獲取數值

我想編寫一個RotationManager類來處理與陀螺儀或加速度計的交互,其內部操作對於應用程序的其餘部分將是抽象的。我如何設計RotationManager類?爲了構建一個好的可重用的RotationManager實例,應該考慮哪些事情?

感謝,

拉吉

回答

1

蘋果的核心運動框架已經做這份工作適合你。使用CMMotionManager,您可以選擇單獨接收加速度計和陀螺儀事件,或者註冊組合設備動作事件,以自動使用用戶設備上可用的所有硬件。

+0

好的,但是我怎樣才能在iPhone 3G或iPhone 3GS上獲得旋轉事件,因爲它沒有陀螺儀? – 2011-04-23 07:32:42

+1

在大多數情況下,單獨使用加速度計無法檢測設備旋轉。你甚至可以在非陀螺儀設備上試用Core Motion框架爲你生成的數據嗎?我懷疑你或我能比蘋果的工程師做得更好。 – 2011-04-24 13:45:31

+0

是的,我現在依賴CMAttitude來給我提供所需的信息。 – 2011-04-26 06:26:44

相關問題