IOS 中動畫的暫停與繼續播放的詳解
創新互聯專注于易門網站建設服務及定制,我們擁有豐富的企業做網站經驗。 熱誠為您提供易門營銷型網站建設,易門網站制作、易門網頁設計、易門網站官網定制、微信小程序開發服務,打造易門網絡公司原創品牌,更為您提供易門網站排名全網營銷落地服務。
在使用動畫控制UI的時候,可能會碰到通過手勢或其他方式要進行暫停正在進行中的動畫,然后再繼續。如手指按下時,暫停動畫,手指離開時繼續動畫。
實現原理主要是通過UI的layer進行相關的控制。
暫停動畫:
- (void)pauselayer:(CALayer *)layer { CFTimeInterval pausedTime = [layer convertTime:CACurrentMediaTime() fromLayer:nil]; layer.speed = 0.0; layer.timeOffset = pausedTime; }
繼續動畫:
- (void)playlayer:(CALayer *)layer { CFTimeInterval pausedTime = [layer timeOffset]; layer.speed = 1.0; layer.timeOffset = 0.0; layer.beginTime = 0.0; CFTimeInterval timeSincePause = [layer convertTime:CACurrentMediaTime() fromLayer:nil] - pausedTime; layer.beginTime = timeSincePause; }
使用示例:
// 暫停 [self pauselayer:self.label01.layer]; // 繼續 [self playlayer:self.label01.layer];
如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
本文標題:IOS中動畫的暫停與繼續播放的詳解
當前地址:http://vcdvsql.cn/article40/pegiho.html
成都網站建設公司_創新互聯,為您提供網站導航、響應式網站、、建站公司、虛擬主機、外貿網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯