2012-12-30 73 views
0

我正在尋找在我爲OS X編寫的Cocoa應用程序中創建簡單的動畫(淡入淡出,窗戶滑開,圖形移動或「填充」)。關於Core Animation,Core Graphics,NSViewAnimation和Quartz Composer的信息以及如何在Cocoa應用程序中使用這些信息,但我很快就失去了方向。還有一個消息來源稱,MountainLion不再支持Core Animation。什麼應該用於基本動畫?是否有一個特定的框架或第三方庫會有用,或者是用於動畫效率應用程序的最佳實踐方法?動畫可可應用程序中的對象OS X

我很抱歉沒有更具體,但我有點困惑,究竟要查找什麼。

+0

核心動畫仍然非常支持,可能是你應該研究的框架。你從哪裏得到它不被支持? –

回答

3

最簡單的事情就是修改視圖圖層的屬性。要做到這一點,你需要爲你的視圖設置標誌,標明「想要圖層」(我最近主要在iOS上工作,所以我忘了它究竟是什麼)。當你爲視圖,視圖和所有它子視圖由CALayer對象支持。

默認情況下,對圖層動畫屬性的更改默認爲「隱式」設置。您還可以將更改附加到CATransaction開始/結束塊中的圖層屬性,以更改層定時和動畫曲線等內容。

下一步的複雜性是創建CAAnimation對象並將它們添加到圖層中。從CABasicAnimation開始。您應該能夠在網上找到教程,向您展示如何使用CABasicAnimations動畫圖層屬性。

恐怕文件很薄。

iOS增加了一組視圖動畫方法,使動畫視圖變得非常簡單。可悲的是,在Mac OS上沒有相同的功能。你必須處理動畫代理,這有點令人困惑。您可能會看到一些Core Animation的書籍。一個是Marcus Zarra,另一個是Bill Dudney

編輯:另一個選項,我沒有在我的(相當老)職位提到:Mac OS視圖對象有一些稱爲動畫代理。您可以將屬性更改發送到視圖的動畫代理,系統會創建一個動畫來進行更改。

如果您使用的是自動佈局,請注意,更改視圖的框架或邊界不能按預期工作,因爲自動佈局會嘗試佔用視圖對象的大小和位置。相反,您希望將銷售點添加到約束條件,並對約束條件的設置進行動畫更改。

+0

好的,謝謝。這比我得到的答案要好得多。我想我明白你說的大部分內容。我將不得不嘗試我能夠看到從iOS中傳出多少內容。 – user1670148

相關問題