動畫一直是iOS系統的一大亮點,CoreAnimation和粒子效果的支持,開發者能夠很容易的作出效果炫酷的動畫特效。在watchOS中,因爲性能和屏幕尺寸的限制,對於動畫,並無強大的框架支持,可是這並非說開發者就沒辦法在watch上添加動畫的特效了。在watchOS中惟一可讓開發者用於動畫操做的就是幀動畫。框架
和iOS相似,watchOS中的真動畫也是經過UIImage對象的合集來展現的。只是設置和用法略有不一樣。性能
首先,watchOS中幀動畫的操做被單獨封裝成了一個協議,固然,WKInterfaceImage類是遵照了這個協議的:動畫
public protocol WKImageAnimatable : NSObjectProtocol { //從默認幀開始播放動畫 public func startAnimating() //播放一個指定範圍的幀動畫 NSRange是幀的範圍,durtion是播放一遍的時間,repeatCount是重複播放次數,0爲無限循環 public func startAnimatingWithImagesInRange(imageRange: NSRange, duration: NSTimeInterval, repeatCount: Int) //中止播放動畫 public func stopAnimating() }
建立幀動畫的步驟與一些注意:spa
一、關聯一個視圖中的WKInterfaceImage對象code
二、全部幀動畫的圖片幀必須有統一的格式:好比image1.png,image2.png等等對象
三、給WKInterfaceImage對象設置幀前綴:圖片
imageInterface.setImageNamed("image")
注意:這裏使用的方法和設置圖片的方法同樣,可是參數有別,圖片的設置須要完整的圖片名,動畫幀前綴的設置只要設置幀圖片的前綴。開發
四、開始動畫:get
imageInterface.startAnimatingWithImagesInRange(NSRange(location: 1, length: 3), duration: 3, repeatCount: 0)
注意:素材幀必須放入watchKit App這個Target中,纔可使用。 it
專一技術,熱愛生活,交流技術,也作朋友。
——琿少 QQ羣:203317592