本節書摘來自異步社群《ios 6進階開發手冊(第4版)》一書中的第1章,第1.9節秘訣:基于加速計的滾動視圖,作者 【美】erica sadun,更多章節内容可以通路雲栖社群“異步社群”公衆号檢視
1.9 秘訣:基于加速計的滾動視圖
ios 6進階開發手冊(第4版)
好幾位讀者要求我在本書這一版中包括進一個傾斜滾輪秘訣。傾斜滾輪使用裝置的内置加速計來控制在uiscrollview的内容周圍的移動。當使用者調整裝置時,材料會相應地“下落”。它不會把視圖定位在螢幕上,而是把内容視圖滾動到一個新的偏移位置。
建立這個界面的挑戰在于:确定裝置在什麼地方應該具有它的靜止軸(resting axis)。大多數人最初建議當顯示屏靠着它的背部時應該是穩定的,并且z軸方向筆直地指向上方。事實證明:這實際上是一種相當糟糕的設計選擇。要使用那根軸,就意味着在導航期間螢幕必須實際地偏離觀看者。随着裝置旋轉離開視圖,使用者将不能完全看到螢幕上所發生的事情,尤其是在固定的位置使用裝置時,站在高處檢視裝置有時也會産生這種效果。
作為替代,秘訣1-5假定穩定的位置是通過z軸指向大約45°的方向,即使用者把iphone或ipad握在手中的自然位置,這處于正面朝上和正面朝前方的中間位置。對秘訣1-5中的數學運算做了相應的調整。從這個歪斜的位置來回傾斜,使螢幕在調整期間保持最大的可見性。
與秘訣1-4相比,這個秘訣中的另一處改變是低得多的加速常量。這使螢幕上的運動能夠更慢地發生,讓使用者更容易降低速度并恢複導航。
秘訣1-5 傾斜滾輪
擷取這個秘訣的代碼