iOS 開發(fā)之兩個UITableView之間的聯(lián)動

現(xiàn)在市面上有很多app都有聯(lián)動功能,有的是兩個TablebView之間的聯(lián)動,比如美團外賣,餓了么以及百度外賣等等,本文仿造美團外賣實現(xiàn)兩個tableView之間的聯(lián)動效果,效果圖如下:

效果圖

下面來說下實現(xiàn)兩個TableView之間聯(lián)動的主要思路:

1.創(chuàng)建一個 MerchantFilterView 用以盛裝兩個tableView

2.先給兩個假的數(shù)據(jù)源用于左右兩邊tableView的數(shù)據(jù)展示:

數(shù)據(jù)源

3.定義兩個TableView:LeftTableView和RightTableView:

tableView定義

cell內(nèi)容顯示:

cell內(nèi)容

先將左邊的TableView關聯(lián)右邊的TableView:點擊左邊的TableViewCell,右邊的TableView跳到相應的分區(qū)列表頭部,然后在用代理傳值的方法將點擊內(nèi)容展示出來。

cell點擊

4.在viewController 視圖中用以展示:

創(chuàng)建一個UIButton用以點擊展示,然后再創(chuàng)建一個UIView覆蓋在視圖控制器上,將MerchantFilterView添加在UIView上

視圖添加

當button或view上手勢點擊時利用一個BOOL值來判斷MerchantFilterView是否顯示或隱藏

點擊

此時若出現(xiàn)UIView上的手勢和UITableView點擊沖突,可根據(jù)UIGestureRecognizerDelegate代理方法來解決

手勢沖突解決方法

最后根據(jù)MerchantFilterViewDelegate 的代理方法來處理我們想要做的事情

MerchantFilterViewDelegate代理

這樣就實現(xiàn)了兩個TableView之間的聯(lián)動,是不是很簡單。由于水平有限,本文只適用于初學者,大牛繞道!文中若有錯誤的地方,或者有更好的方法,還望大神指正。附上本文的Demo鏈接,配合demo看文章,效果更佳!

如果你看完后覺得對你有所幫助,還望在GitHub上點個star。贈人玫瑰,手有余香。

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

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