2015-10-21 24 views
0

我有四個圖像;每個寬度爲350像素;我有第一個文本北部,第二個東部文本,第三個南部文本和第四個文本西部。我把它們放到一個圖像中的scrollView中,並將所述的scrollView鏈接到我指向我的iPad的方向。現在,當我平移周圍時,我希望滾動能夠在圖像周圍平移,因此,如果我朝北看東轉,我會看到屏幕向北滑動並向東移動。使用iPad指南針在Swift中平移圖像/圖像

現在我試圖用指南針來做到這一點,它的工作原理合理,但是如何在0度和360度之間穿越邊界是一個挑戰。我嘗試使用偏航,以便看到兩個180度的圓圈,但是如何使這項工作也避開了我。我谷歌這一點,找到四元數和歐拉角度,但沒有什麼讓我感覺足夠...

需要一些方向/幫助。

+0

這個問題已經回答了下面,我張貼代碼。 – user3069232

回答

2

你並不真的需要一個滾動視圖,因爲你是通過設備標題來控制滾動偏移量,而不是讓用戶滑動屏幕。因此,您可以使用普通的舊UIView作爲圖像視圖的父項。您只需更新view.bounds.origin而不是scrollView.contentOffset即可「滾動」。 (引擎蓋下,滾動視圖的contentOffset相同的bounds.origin

不管怎麼說,打好你的圖片是這樣的:

+-------+-------+-------+-------+-------+ 
| North | East | South | West | North | 
+-------+-------+-------+-------+-------+ 

注意,北方圖像被使用了兩次。

當你得到一個新的標題,更新偏移這樣的滾動視圖:

let range = CGFloat(350 * 4) 
let offset = range * (CGFloat)direction/360 
scrollView.contentOffset = CGPointMake(offset, 0) 
+0

哇,這個作品完美,比我一直在玩的代碼簡單得多。 **謝謝**,如果我可以提供超快速和簡單的答案,將會得到兩票。 – user3069232