本文摘自:http://www.cnblogs.com/somamy/articles/2147742.html
参考:http://www.cnblogs.com/kidreborn/archive/2011/05/12/2044560.html
所謂的加速感應器是利用使用者對 iPhone device 所做的力量來衡量其 加速度 與 重力 ,可以偵測三個方向的加速度,即 x,y,z 軸,透過 (x,y,z) 軸所丟出的參數,你可以得知類似以下狀況
(1) iPhone 是正面朝上還是背面朝上
(2) 使用者是正拿著還是測拿著 (可以配合自動旋轉功能)
(3) 使用在把手機拿動了多少距離,包括上下左右
加速感應器 (Acceleration) 偵測的單位為 g力 (即重力),正常情況我們都會受地心引力所影響,即一個 g 力,用平常的直立方式觀看 iPhone ,則其會在 y 軸得到 1g 的重力,而傾斜後就會在不同方向得到分散的 g 力,而如果快速移動你的 iPhone 的話,加速感應器則可以偵測 g 力的瞬間變化,來得知 iPhone 的移動。
在使用加速感應器的時候你必須建立一個遵循 UIAccelerometerDelegate 協定的 UIAccelerometer 類別,UIAccelerometer是以單例模式(singleton) 存在,再產生一個實例並 將此實例成為加速感應器的委派,宣告實例的程式碼如下:
1UIAccelerometer *accelerometer = [UIAccelerometer sharedAccelerometer];