現(xiàn)在開發(fā)的APP項目中,如果沒有實現(xiàn)側(cè)滑返回的功能,都不好意思拿出來秀~
雖然官方提供了側(cè)滑返回的API,但是很多開發(fā)者追求全屏側(cè)滑返回,覺得官方提供的不夠用。
想必大多數(shù)開發(fā)者都知道如何實現(xiàn)側(cè)滑返回,今天,我們就來總結(jié)一下。
三種方法:
方法1:系統(tǒng)自帶的側(cè)滑返回
方法2:【8行代碼教你搞定導(dǎo)航控制器全屏滑動返回效果】 |那些人追的干貨
方法3:百度知道團隊出品的全屏側(cè)滑返回(github地址)
方法一實現(xiàn)(系統(tǒng)方法):

優(yōu)點:實現(xiàn)簡單,導(dǎo)航控制器中對全體viewController的側(cè)滑功能可控,系統(tǒng)API絕對安全可靠,無手勢沖突
缺點:側(cè)滑范圍局限于左側(cè)
適用需求:只需左側(cè)小范圍觸發(fā)側(cè)滑時的首選實現(xiàn)方案。
注:以上代碼是強制開啟,而系統(tǒng)的側(cè)滑是默認開啟的,如果在某一界面 hidesBackButton,那么系統(tǒng)是禁止當前界面的側(cè)滑返回。
如果實現(xiàn)了以上代碼,屬于強制開啟,那么就算當前界面hidesBackButton,側(cè)滑功能一樣開啟,通過上面的代理方法可以做到靈活控制哪個界面是否開啟側(cè)滑。
方法二實現(xiàn)(并不完美的全屏側(cè)滑):

優(yōu)點:最簡潔的全屏側(cè)滑實現(xiàn),導(dǎo)航控制器中對全體viewController的側(cè)滑功能可控
缺點:從右邊忘左邊劃動也能觸發(fā)側(cè)滑操作,有手勢沖突,并不完美。且調(diào)用官方私有API
另外:正是缺點的所在,和Cell的側(cè)滑刪除手勢也是有沖突的,也就是說,免不了需要解決手勢的沖突。
適用需求:最好不用,畢竟缺點明顯。(不過這個實現(xiàn)思路,確實值得稱贊?。?/p>
方法三實現(xiàn)(集成最簡單、功能最全面):
去上面的鏈接地址下載DEMO,具體詳情見github

優(yōu)點:最全面的全屏側(cè)滑實現(xiàn),集成超簡單,全體viewController的側(cè)滑功能可控,不過得在ViewController內(nèi)部去控制,稍微麻煩一點;另外,百度知道團隊在維護該DEMO,功能會越來越完善,花樣更多。
缺點:調(diào)用官方私有API(不過已有上線作品,不影響上線,缺點可以忽略?。?/p>
適用需求:目前最好的全屏側(cè)滑實現(xiàn)方案。
以上為親測后的感受,希望對大家有所幫助!