一句話(huà)實(shí)現(xiàn)性感動(dòng)畫(huà)swift_ios

一行代碼搞定酷炫動(dòng)畫(huà)

之前寫(xiě)了幾篇關(guān)于UIView動(dòng)畫(huà)和CA動(dòng)畫(huà)的理論以及它們的關(guān)系丈秩,并沒(méi)有真正從實(shí)踐的角度去實(shí)現(xiàn)各個(gè)動(dòng)畫(huà)編程。然而這次就該記錄下到底怎么在APP中運(yùn)用各類(lèi)動(dòng)畫(huà)了扇丛,也剛剛手上剛好有個(gè)音樂(lè)播放器demo,就拿你練手吧绿映。


  • 先來(lái)看看效果圖到底是怎樣的。
效果美到?jīng)]話(huà)說(shuō)
  • 在構(gòu)建的多個(gè)動(dòng)畫(huà)中骂蓖,自己覺(jué)得有點(diǎn)小得意的就是歌曲列表后面那個(gè)隨音樂(lè)跳動(dòng)的動(dòng)畫(huà)积瞒。在第一個(gè)gif里面不能明顯清晰的呈現(xiàn)出來(lái),于是有了第二個(gè)gif登下。
第一個(gè)gif
  • 第二個(gè)gif中就比較清晰可見(jiàn)了茫孔。非常有節(jié)日氣氛,凌亂中帶有美的感覺(jué)被芳。如果加載到特定的app中缰贝,估計(jì)更有一番風(fēng)味。這些都不重要畔濒,重要的是動(dòng)畫(huà)簡(jiǎn)單易得卻不失風(fēng)范剩晴。怎么簡(jiǎn)單?一行代碼夠簡(jiǎn)單了吧侵状。世界上難道還存在不用代碼就能實(shí)現(xiàn)動(dòng)畫(huà)的嗎赞弥?那是storyboard世界嗎?嘻嘻開(kāi)個(gè)玩笑壹将,估計(jì)有嗤攻,是我不知道而已。
GRMusicUIAnimation2.gif
容我先記錄一下第一個(gè)gif里面所包含的動(dòng)畫(huà)嗎诽俯?其實(shí)光看gif妇菱,有點(diǎn)難看出所有animation,還需娓娓道來(lái)暴区。
  • 1.首先從上往下開(kāi)始說(shuō)啊(要怪我嗎)闯团,第一個(gè)肯定是那個(gè)旋轉(zhuǎn)的封面,這旋轉(zhuǎn)動(dòng)畫(huà)想必不用多嘴仙粱,略過(guò)房交。

  • 2.旋轉(zhuǎn)封面上有個(gè)綠色進(jìn)度條動(dòng)畫(huà),高仿QQ音樂(lè)哦伐割。自己把circleSleder改造后就成進(jìn)度條了候味。

  • 3.旋轉(zhuǎn)封面還有個(gè)彈性動(dòng)畫(huà)刃唤,界面切換時(shí)展現(xiàn)。duration比較短白群,不太明顯尚胞。

  • 4.往下就是按鈕btn的動(dòng)畫(huà),搖晃和放大帜慢。當(dāng)然也在界面切換時(shí)還有個(gè)彈性動(dòng)畫(huà)笼裳。

  • 5.接著往下就是歌曲列表的動(dòng)畫(huà)。造gif時(shí)忘了拖動(dòng)列表粱玲,所以歌曲列表中cell的酷炫動(dòng)畫(huà)沒(méi)有呈現(xiàn)出來(lái)躬柬。不過(guò)這個(gè)動(dòng)畫(huà)在另一界面中滾動(dòng)tableView時(shí)呈現(xiàn)出來(lái)了。這動(dòng)畫(huà)思想源于老鎮(zhèn)抽减。

  • 6.界面切換回來(lái)時(shí)允青,整個(gè)歌曲列表有個(gè)3D動(dòng)畫(huà),不知道察覺(jué)到?jīng)]有胯甩。

  • 7.歌曲列表背后有個(gè)隨音樂(lè)跳動(dòng)的動(dòng)畫(huà)昧廷,也就是待會(huì)重點(diǎn)記錄說(shuō)明的動(dòng)畫(huà)。

  • 8.底部有個(gè)向左滾動(dòng)的label偎箫。其實(shí)它并不是label木柬,它是一個(gè)button。button上實(shí)現(xiàn)的動(dòng)畫(huà)哦淹办!原創(chuàng)哦眉枕,還可以吧!界面切換回來(lái)的時(shí)候它也有個(gè)彈性動(dòng)畫(huà)怜森。

  • 9.另一界面的頻道列表滾動(dòng)時(shí)cell的動(dòng)畫(huà)速挑。

  • 10.其實(shí)還有一個(gè)小動(dòng)畫(huà),就是點(diǎn)擊音樂(lè)控制btn按鈕時(shí)候彈出的提示窗口副硅。很多牛人一看就知道怎么回事姥宝。我采用的的框架是swiftNotice。不過(guò)這框架不支持純文本動(dòng)畫(huà)恐疲,自己擴(kuò)展的呢腊满,順便把frame也重寫(xiě)了下。

  • 至此已經(jīng)基本記錄完這個(gè)demo所具有的動(dòng)畫(huà)培己。
該好好說(shuō)說(shuō)那個(gè)隨音樂(lè)跳動(dòng)的動(dòng)畫(huà)了吧碳蛋?說(shuō)好的一行代碼呢?省咨!請(qǐng)看大屏幕肃弟。
 animation音樂(lè)波動(dòng) = GRMusicAnimation(rect: self.geQuLieBiao.frame, number: 5)
  • 夠簡(jiǎn)單的接口吧。只帶兩個(gè)參數(shù)。

rect: 是指定這個(gè)動(dòng)畫(huà)視圖的frame笤受。
number:是指動(dòng)畫(huà)中要顯示的柱子數(shù)穷缤。

柱子數(shù)為30的時(shí)候
  • 柱子數(shù)為30的時(shí)候,是不是更有誘惑呢箩兽?

  • 當(dāng)然也有控制API绅项,想要在什么時(shí)候啟動(dòng)就什么時(shí)候啟動(dòng),什么時(shí)候停止就什么時(shí)候停止比肄。
    animation音樂(lè)波動(dòng).GRAnimateStart()
    animation音樂(lè)波動(dòng).GRAnimateStop()
    

這里值得一提的是我這個(gè)是屬于UIView動(dòng)畫(huà),也是連續(xù)動(dòng)畫(huà),因此在UIView動(dòng)畫(huà)的結(jié)束閉包里面是連續(xù)調(diào)用了UIView.而手動(dòng)終止動(dòng)畫(huà)layer.removeAllAnimations也會(huì)執(zhí)行結(jié)束閉包囊陡。因此在終止動(dòng)畫(huà)的時(shí)候一定要考慮到在閉包里區(qū)分到底是自動(dòng)播放動(dòng)畫(huà)完畢還是手動(dòng)終止了動(dòng)畫(huà)芳绩。不加以區(qū)分的話(huà)是無(wú)法停止動(dòng)畫(huà)的。這問(wèn)題也在前面的文章了記錄了撞反。

這是自己第一篇在簡(jiǎn)書(shū)使用gif圖的文章 妥色。感覺(jué)這gif造圖工具好是好用,但虛化的背景壓根渲染不來(lái)啊~下次換個(gè)git工具試試遏片,哪位大牛有推薦嗎嘹害?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市吮便,隨后出現(xiàn)的幾起案子笔呀,更是在濱河造成了極大的恐慌,老刑警劉巖髓需,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件许师,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡僚匆,警方通過(guò)查閱死者的電腦和手機(jī)微渠,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)咧擂,“玉大人逞盆,你說(shuō)我怎么就攤上這事∷缮辏” “怎么了云芦?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)攻臀。 經(jīng)常有香客問(wèn)我焕数,道長(zhǎng),這世上最難降的妖魔是什么刨啸? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任堡赔,我火速辦了婚禮,結(jié)果婚禮上设联,老公的妹妹穿的比我還像新娘善已。我一直安慰自己灼捂,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布换团。 她就那樣靜靜地躺著悉稠,像睡著了一般。 火紅的嫁衣襯著肌膚如雪艘包。 梳的紋絲不亂的頭發(fā)上的猛,一...
    開(kāi)封第一講書(shū)人閱讀 48,970評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音想虎,去河邊找鬼卦尊。 笑死,一個(gè)胖子當(dāng)著我的面吹牛舌厨,可吹牛的內(nèi)容都是我干的岂却。 我是一名探鬼主播,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼裙椭,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼躏哩!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起揉燃,我...
    開(kāi)封第一講書(shū)人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤扫尺,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后炊汤,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體器联,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年婿崭,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了拨拓。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡氓栈,死狀恐怖渣磷,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情授瘦,我是刑警寧澤醋界,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布,位于F島的核電站提完,受9級(jí)特大地震影響形纺,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜徒欣,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一逐样、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦脂新、人聲如沸挪捕。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)级零。三九已至,卻和暖如春滞乙,著一層夾襖步出監(jiān)牢的瞬間奏纪,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來(lái)泰國(guó)打工斩启, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留亥贸,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓浇垦,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親荣挨。 傳聞我的和親對(duì)象是個(gè)殘疾皇子男韧,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 發(fā)現(xiàn) 關(guān)注 消息 iOS 第三方庫(kù)、插件默垄、知名博客總結(jié) 作者大灰狼的小綿羊哥哥關(guān)注 2017.06.26 09:4...
    肇東周閱讀 12,022評(píng)論 4 62
  • Swift版本點(diǎn)擊這里歡迎加入QQ群交流: 594119878最新更新日期:18-09-17 About A cu...
    ylgwhyh閱讀 25,286評(píng)論 7 249
  • 21點(diǎn)規(guī)則,策略及算法參考 21點(diǎn)算法 鹃操。 21點(diǎn)規(guī)則 游戲由玩家和莊家(即賭場(chǎng)的發(fā)牌員)對(duì)玩韭寸,看誰(shuí)的牌面點(diǎn)數(shù)更靠...
    順風(fēng)飄千里閱讀 11,148評(píng)論 1 2
  • 已經(jīng)不記得當(dāng)初是如何知道友鄰的了,大概是從晨讀團(tuán)開(kāi)始的吧荆隘。說(shuō)來(lái)慚愧恩伺,我這惰性有時(shí)候還真是強(qiáng)大,基本上加進(jìn)晨讀團(tuán)過(guò)不...
    Ashley_何慢慢閱讀 443評(píng)論 2 1
  • 張承不相信愛(ài)情椰拒,在遇到蘇紫之前晶渠。 他們是在論壇上認(rèn)識(shí)的,確切的說(shuō)是在一篇文章評(píng)論里面認(rèn)識(shí)的燃观。 大家都在各輸己建褒脯,張...
    菜pan閱讀 229評(píng)論 0 0