本文主要講三大塊霜运,1.webView如何在UITableView中使用,并且要合理的計(jì)算出webView的高度蒋腮,2.電商商品倒計(jì)時功能的實(shí)現(xiàn)淘捡,3.講解如何分析動畫,并且實(shí)現(xiàn)一個翻轉(zhuǎn)動畫池摧。
在開始講之前焦除,我想先把實(shí)現(xiàn)的效果先放出來。
1.webView如何在UITableView中使用作彤,并且要合理的計(jì)算出webView的高度
由于xcode現(xiàn)在已經(jīng)更新到了11膘魄,當(dāng)然是要講解WKWebView了乌逐。筆者在實(shí)現(xiàn)上面功能的時候,第一個遇到的坑就是高度計(jì)算的問題瓣距,網(wǎng)上有很多這樣的文章黔帕,教你如何去計(jì)算高度,我這邊講一個最最合適的方法蹈丸,用kvo動態(tài)去監(jiān)聽webView的高度成黄。第二個坑就是高度計(jì)算準(zhǔn)確之后,在tableView滑動的時候會很卡很卡逻杖,經(jīng)過查閱文章奋岁,需要把webview加在UIScrollView上面,然后再把scrollView加在cell的contentView上面荸百,加完之后你會發(fā)現(xiàn)闻伶,哈哈,一點(diǎn)都不卡了够话,很開心是不是蓝翰,下面把主要的代碼貼上來,大家看一看女嘲。
主要代碼如下:
大家把我的這些代碼加上項(xiàng)目里面一跑起來畜份,效果就會跟筆者一樣了。
2.電商商品倒計(jì)時功能的實(shí)現(xiàn)
做過電商的童鞋都知道欣尼,項(xiàng)目里面有很多秒殺之類的活動爆雹,秒殺之類的活動肯定就會有倒計(jì)時了,倒計(jì)時的功能本質(zhì)是這樣拿到服務(wù)器給的時間和本地時間去計(jì)算愕鼓,最后得出我們想要的結(jié)果钙态,實(shí)現(xiàn)的方案有兩種,一種是使用NSTimer定時器來倒計(jì)時菇晃,另外一種是使用GCD來倒計(jì)時,本文采用第二種實(shí)現(xiàn)方案册倒,下面給出具體思路。
主要步驟:
1. 計(jì)算截止時間與當(dāng)前時間差
2. 用GCD倒計(jì)時 給時分秒字符串通過遞減過后的秒數(shù),重新計(jì)算數(shù)值,并輸出顯示, 遞減時間差 倒計(jì)時-1
1. 計(jì)算截止時間與當(dāng)前時間差:
2.使用GCD來實(shí)現(xiàn)倒計(jì)時
用GCD這個寫有一個好處磺送,跳頁不會清零 跳頁清零會出現(xiàn)倒計(jì)時錯誤
有一點(diǎn)需要注意的是剩失,控制器銷毀的時候,需要把我們的timer取消掉册着。
3.實(shí)現(xiàn)一個翻轉(zhuǎn)動畫
1.我當(dāng)時寫的這個效果,主要參考另外一個app脾歧,當(dāng)時在那個app查看效果甲捏,因?yàn)樾Ч芸欤蟾乓簿?.25秒左右鞭执,一晃沒過司顿,我每次看效果芒粹,都覺得是這個,比如折疊效果大溜,平移效果等化漆,做了之后發(fā)現(xiàn),總是得不到想要的結(jié)果钦奋,很是頭疼座云,問題出在哪里了,我在想問題還是出在動畫太快了付材,我憑肉眼去看效果總是會有問題朦拖,最后我這邊想了一個辦法,采用iphone自帶的錄屏功能厌衔,把你需要參考的動畫效果錄下來璧帝,錄下來之后,你就需要在iphone的圖片里去找到對應(yīng)的視頻富寿,然后一幀一幀的去看睬隶,這個時候就很容易得到你的答案了。我當(dāng)時用這個一看之后页徐,這個不就是個翻轉(zhuǎn)動畫嗎苏潜,知道是什么動畫類型之后,就很容易去寫代碼了泞坦。
下面貼出主要代碼:
講到這里窖贤,本文已經(jīng)結(jié)束了,本人demo下載地址如下:demo下載地址贰锁。