前言java
Android快速開發框架-ZBLibrary 最近將之前的全局右滑返回手勢改爲了 底部左右滑動手勢。git
爲何呢?爲了解決滑動返回手勢的問題。github
目前有3種滑動返回手勢瀏覽器
1、側滑返回微信
表明app: 微信(帶跟手動畫)app
問題:框架
屏幕尺寸超過必定大小(按正常手掌大小和手指長度算,最大可掌握尺寸爲4.7寸)會致使用戶右手持機時手指夠不到左側滑動手勢觸發區域。動畫
即使勉強夠到,失敗率也很高,失敗幾回後用戶就不想再用了。this
2、全局右滑返回spa
表明app: 酷狗音樂(帶跟手動畫)、QQ(無跟手動畫)
問題:
1.與向右滑動切換tab的手勢衝突
下方的 酷狗樂庫 界面和 QQ添加 界面就是爲了不衝突而沒有左右滑動切換tab的手勢。
2.與向右拖動網頁等的手勢衝突
若是內容寬度超出了屏幕寬度,用戶向右滑動只是想拖動網頁或照片,結果卻關閉了界面。
因此酷狗跳轉到這種網頁會調用應用外瀏覽器;QQ仍是用內嵌的QQ瀏覽器,但全部網頁界面都不支持滑動返回。
3、底部左右滑動手勢
表明app: 快用通信錄
事實上,這種方式不只能向右滑動返回,還能向左滑動"前進"(效果等同於點擊右上角按鈕)。
而且完美地解決了以上全部問題!好比下方的帶tab的界面,中間左右滑動切換tab、底部左右滑動對應導航欄的"返回"、"全部"。
下面這個是 中間左右滑動切換用戶引導界面、底部向右滑動返回上個界面。
ZBLibrary還加強了 底部左右滑動手勢 的功能,好比下方的內置瀏覽器界面就能夠 底部向左滑動前進、底部向右滑動後退(在首頁則直接返回上個界面)。
可能會有人問:你這個不也和 全局右滑返回 同樣會衝突嗎?
從邏輯上來說確實是衝突的,但從使用上來看是不衝突的:
用戶平時手指是放在中間的,既然直接滑動就能切換tab、拖動網頁,就不會把手指移到屏幕底部了。
那麼若是把手指移到底部左右滑動,確定是想要右滑"返回"或左滑 "前進"了。
如何添加ZBLibrary中的底部左右滑動手勢
1.下載、導入、依賴ZBLibrary
點擊右邊連接查看 http://my.oschina.net/u/2437072/blog/665241
2.新建一個Activity,並extends BaseActivity和implements OnBottomDragListener
3.setContentView(layoutResId, this);
4.重寫onDragBottom方法
實現底部左右滑動對應的操做。這裏是右滑返回、左滑添加列表。而且對應導航欄左右按鈕的點擊事件onClick中調用了onDragBottom方法。
好了。
若是你連2-4這幾步都懶得作,把ZBLibrary裏的DemoActivity.java 複製>粘貼>更名>改代碼 就能夠啦!
下載試用
下載源碼(歡迎Star,歡迎Fork)