創建測試項目後,爲了幫助獲取
相關問題的一些答案,我最近在SO
(已刪除)上詢問,我遇到了一個不同的,雖然類似的問題,旋轉一層自定義UIView
子類。圖層以x/y軸而不是z軸旋轉
可以看到iPhone模擬器會話的視頻here。
根據需要,圖層看起來像是在x/y軸上旋轉,對角線上,而不是圍繞z軸旋轉。
執行旋轉的代碼稱爲setAngle:
如下的圖setter方法中:
_imageLayer.transform = CATransform3DMakeRotation(angle/180.0 * M_PI, 0.0, 0.0, 1.0);
(其中angle
爲度)。
完整的Xcode項目可用here。
最初的SO問題只是在設備方向發生變化後才顯示出這種行爲,所以看起來在我的理解中存在比我第一次想到的更多的空白(來自OSX背景,並且多次使用圖層,我預期不會這些問題)。
所以我的問題是:爲什麼不是根據需要圍繞z軸旋轉的層?
我得到了這個地方,它涉及如何設置圖層'框架。如果我設置了「邊界」和「位置」,那麼圖層就像平常一樣旋轉,但是這個關鍵似乎是獲得了視圖的寬度/高度,這說明了設備方向。這是我的理解缺乏的地方... – trojanfoe 2013-02-16 12:05:13