Swift仿選擇電影票的效果并實現(xiàn)無限/自動輪播的方法
效果圖
實現(xiàn)了什么功能?
1.類似于選擇電影票的效果
2.自動輪播
3.無限輪播
4.非當前顯示view具有縮放和透明的特效
5.頁面滾動的方向分為橫向和縱向
仿照UITableView使用代理實現(xiàn)傳值
protocol PageFlowViewDelegate : NSObjectProtocol{ func sizeForPageInFlowView(flowView : PageFlowView) -> CGSize /// 滾動到了某一列 func didScrollToPage(pageNumber : Int,inFlowView flowView : PageFlowView) /// 點擊了第幾個cell /// /// - Parameters: /// - subView: 點擊的控件 /// - subIndex: 點擊控件的index func didSelectCell(subView : IndexBannerSubiew,subViewIndex subIndex : Int) } protocol PageFlowViewDataSource : NSObjectProtocol{ /// 返回顯示View的個數(shù) func numberOfPagesInFlowView(flowView : PageFlowView) -> Int /// 給某一列設(shè)置屬性 /// /// - Parameters: /// - flowView: <#flowView description#> /// - index: <#index description#> /// - Returns: <#return value description#> func cellForPageAtIndex(flowView : PageFlowView,atIndex index : Int) -> IndexBannerSubiew }
使用示例
// 模擬器原因,底部會有殘影,真機測試沒有 let pageFlowView = PageFlowView.init(frame: CGRect.init(x: 0, y: 72, width: kScreenW, height: kScreenW*9/16)) pageFlowView.backgroundColor = UIColor.white pageFlowView.delegate = self pageFlowView.dataSource = self pageFlowView.minimumPageAlpha = 0.1 pageFlowView.isCarousel = true pageFlowView.orientation = .vertical pageFlowView.isOpenAutoScroll = true //初始化pageControl let pageControl = UIPageControl.init(frame: CGRect.init(x: 0, y: pageFlowView.bounds.height-32, width: kScreenW, height: 8)) pageFlowView.pageControl = pageControl pageFlowView.addSubview(pageControl) pageFlowView.reloadData() view.addSubview(pageFlowView)
源碼下載:
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
Swift使用transform 實現(xiàn)重復(fù)平移動畫效果
這篇文章主要介紹了Swift使用transform 實現(xiàn)重復(fù)平移動畫效果,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-07-07Swift4.1轉(zhuǎn)場動畫實現(xiàn)側(cè)滑抽屜效果
這篇文章主要為大家詳細介紹了Swift4.1轉(zhuǎn)場動畫實現(xiàn)側(cè)滑抽屜效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-06-06簡單了解Swift語言中的break和continue語句的用法
這篇文章主要簡單介紹了Swift語言中的break和continue語句的用法,與其他語言的一樣用于循環(huán)語句流程控制,需要的朋友可以參考下2015-11-11Swift中實現(xiàn)點擊、雙擊、捏、旋轉(zhuǎn)、拖動、劃動、長按手勢的類和方法介紹
這篇文章主要介紹了Swift中實現(xiàn)點擊、雙擊、捏、旋轉(zhuǎn)、拖動、劃動、長按手勢的類和方法介紹,本文分別給出了各種手勢的實現(xiàn)代碼,需要的朋友可以參考下2015-01-01