IOS 中動(dòng)畫的暫停與繼續(xù)播放的詳解
IOS 中動(dòng)畫的暫停與繼續(xù)播放的詳解
在使用動(dòng)畫控制UI的時(shí)候,可能會(huì)碰到通過手勢(shì)或其他方式要進(jìn)行暫停正在進(jìn)行中的動(dòng)畫,然后再繼續(xù)。如手指按下時(shí),暫停動(dòng)畫,手指離開時(shí)繼續(xù)動(dòng)畫。
實(shí)現(xiàn)原理主要是通過UI的layer進(jìn)行相關(guān)的控制。
暫停動(dòng)畫:
- (void)pauselayer:(CALayer *)layer { CFTimeInterval pausedTime = [layer convertTime:CACurrentMediaTime() fromLayer:nil]; layer.speed = 0.0; layer.timeOffset = pausedTime; }
繼續(xù)動(dòng)畫:
- (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]; // 繼續(xù) [self playlayer:self.label01.layer];
如有疑問請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
相關(guān)文章
IOS動(dòng)畫效果源代碼整理(粒子、雪花、火焰、河流、蒸汽)
本篇文章給大家整理的IOS的關(guān)于動(dòng)畫的效果代碼整理,很多效果非常的好看,有興趣的學(xué)下。2018-01-01iOS 數(shù)據(jù)結(jié)構(gòu)之?dāng)?shù)組的操作方法
這篇文章主要介紹了iOS 數(shù)據(jù)結(jié)構(gòu)之?dāng)?shù)組的操作方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2018-07-07禁止iPhone Safari video標(biāo)簽視頻自動(dòng)全屏的辦法
本篇文章給大家分析有沒有辦法禁止iPhone Safari video標(biāo)簽視頻自動(dòng)全屏,以下給出好多種情況分享,感興趣的朋友可以參考下2015-09-09iOS設(shè)置圓角的4種方法實(shí)例(附性能評(píng)測(cè))
這篇文章主要給大家介紹了關(guān)于iOS設(shè)置圓角的4種方法,并給大家附上了性能評(píng)測(cè),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-01-01詳解iOS webview加載時(shí)序和緩存問題總結(jié)
本篇文章主要介紹了iOS webview加載時(shí)序和緩存問題總結(jié) ,這兩天學(xué)習(xí)了Vue.js 感覺組件這個(gè)地方知識(shí)點(diǎn)挺多的,而且很重要,所以,今天添加一點(diǎn)小筆記。2017-09-09iOS開發(fā)中UIPopoverController的使用詳解
這篇文章主要介紹了iOS開發(fā)中UIPopoverController的使用,代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下2015-11-11ios通過SDWebImage實(shí)現(xiàn)圖片加載時(shí)的漸變效果
本篇文章主要介紹了ios通過SDWebImage實(shí)現(xiàn)圖片加載時(shí)的漸變效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-04-04