久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

iOS實現(xiàn)卡片堆疊效果

瀏覽:6日期:2022-09-17 09:42:44

本文實例為大家分享了iOS實現(xiàn)卡片堆疊效果的具體代碼,供大家參考,具體內(nèi)容如下

iOS實現(xiàn)卡片堆疊效果

如圖,這就是最終效果。

去年安卓5.0發(fā)布的時候,當我看到安卓全新的Material Design設計語言后,真的是喜歡的不得了,這種設計語言不同于偏平式設計以及卡片式設計。簡約,自然。直到15年初,偶然看到CM團隊已經(jīng)發(fā)布了好多基于安卓5.0的ROM,恰巧有我手機對應的版本,便迫不及待的刷了固件,體驗了一把。不得不說的是,安卓的這個版本簡直歷史性變革,更加流暢,好用,而且在開發(fā)者模式下,發(fā)現(xiàn)這個版本移除了Dalvik模式,全部采用了ART模式(在安卓4.4的時候,這兩種是可以選擇的),雖然我用的時候會出現(xiàn)一些小bug(大概一周會出現(xiàn)1-2次明顯卡頓),不過用起來還是很舒服的。

然后就說一下我比較喜歡的幾個地方吧。

1.后臺任務管理器樣式,卡片堆疊效果,第一次看見這個感覺酷爆了,因為我從來沒想過能在手機上出現(xiàn)這么炫酷的效果。然后就是蘋果在一年后9.0的系統(tǒng)后臺管理界面也使用了這種設計,只不過是橫向滾動,我想說一個大寫的呵呵。2.沉浸式設計,額…這個有點抄襲蘋果設計的嫌疑,不過我覺得比蘋果的更加好看 簡約。雖然在4.4版本上可以設置狀態(tài)欄透明了,但是我做過的一些東西有時候還是會蒙上大概不透明度為50%的黑色圖層(可能是我的打開方式有誤).3.短信,日歷右下角的那個小加號。雖然看起來沒什么,但是那個很有點點睛之筆的意思啊。每個頁面的顏色搭配都很漂亮,那個小加號的顏色也是點睛色。看起來很舒服,很有紙質(zhì)閱讀的感受(后來看到說當時谷歌就是以這種感覺為基礎設計的這套設計語言).4.長陰影。不多說了,目測一大波App的icon都采用這個了。

思路

就是利用scrollview的內(nèi)容視圖的偏移量來計算每個view的位置,然后利用iOS中滾動視圖在頂部以及底部繼續(xù)拉的時候的那個效果來相應的完成邊界的效果(安卓的滾動視圖…呵呵,不重寫的話就拉不動了)。其實就那么幾條公式就搞定了。

核心代碼

-(void)scrollViewDidScroll:(UIScrollView *)scrollView{ [self.viewArr enumerateObjectsUsingBlock:^(UIView * view, NSUInteger idx, BOOL *stop) { NSInteger value = self.distance; /*************設置位置***************/ CGRect rect = view.frame; //view最底位置 NSInteger min_y = self.top + value*idx; rect.origin.y = min_y - (scrollView.contentOffset.y); //view的最高位置 if (scrollView.contentOffset.y >= value*idx-value*pow(2.0, idx)/pow(2.0, self.dataArr.count)){ rect.origin.y = self.top+value*pow(2.0, idx)/pow(2.0, self.dataArr.count); } if (scrollView.contentOffset.y > scrollView.contentSize.height- SCREEN_HEIGTH) { rect.origin.y = rect.origin.y -(scrollView.contentOffset.y -(scrollView.contentSize.height-SCREEN_HEIGTH)); } view.frame = rect; /*************設置大小***************/ CGFloat scale = 0.60; scale = (rect.origin.y*0.75 +60)/1000+scale >=0.9?0.9:(rect.origin.y*0.75 +50)/1000+scale; view.layer.transform = CATransform3DMakeScale(scale, scale, 1); }];}

[git源碼]

1.使用時同UITableView類似。 2.可以詳細看一下接口函數(shù)就會知道怎么使用了。 3.已經(jīng)實現(xiàn)了復用。 4.后續(xù)會一直完善。 5.如果代碼能幫助到您,非常榮幸。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標簽: IOS
相關文章:
主站蜘蛛池模板: 无棣县| 遵化市| 九龙坡区| 筠连县| 新平| 丹江口市| 同江市| 长沙县| 石台县| 婺源县| 南江县| 砀山县| 木兰县| 台中县| 华亭县| 花莲市| 南部县| 冀州市| 丘北县| 汾西县| 湘乡市| 贞丰县| 青浦区| 双桥区| 辽中县| 政和县| 林芝县| 故城县| 获嘉县| 苍山县| 桂阳县| 邵东县| 余庆县| 衡南县| 上林县| 淅川县| 宜良县| 成都市| 天峨县| 章丘市| 拜泉县|