Android - Navigation Drawer
http://www.jianshu.com/p/c8cbeb7ea43a
用Navigation Drawer 和 Navigation View 來實現左右側滑
Activity裏甚至什麽都不用寫
NavigationDrawer 簡介
NavigationDrawer 是 Google 在 Material Design 中推出的一種側滑導航欄設計風格。說起來可能很抽象,我們直接來看看 網易雲音樂 的側滑導航欄效果
Google 為了支持這樣的導航效果,推出一個新控件 —— DrawerLayout 。而在 DrawerLayout 沒誕生之前,需求中需要實現側滑導航效果時,我們必然會選擇去選擇一些成熟的第三方開源庫(如最有名的 SlidingMenu)來完成開發 。
在對比過 DrawerLayout 和 SlidingMenu 的實現效果後,基於以下的幾點,我認為完全可以在開發中使用 DrawerLayout 取代以前的 SlidingMenu:
- 從動畫效果上看,你會發現兩者僅僅是在移動的效果上有些差別外,其他地方並沒有太大的差異
- 在交互效果上,我認為這兩者都差不多的,就算你把 網易雲音樂 的效果套到了 手Q 上,也不會影響到用戶的交互
- DrawerLayout 用起來比 SlidingMenu 更簡單,代碼量更少(往下看就知道了)
- DrawerLayout 是向下兼容的,所以不會存在低版本兼容性問題
- Google 親兒子,沒理由不支持啊!!!!!!
到這裏,要是你還沒有引入 DrawerLayout 開發的沖動,請繼續聽我為你好好安利一番。
一般情況下,在 DrawerLayout 布局下只會存在兩個子布局,一個 內容布局 和 一個 側滑菜單布局,這兩個布局關鍵在於 android:layout_gravity 屬性的設置。如果你想把其中一個子布局設置成為左側滑菜單,只需要設置 android:layout_gravity="start" 即可(也可以是 left,右側滑則為 end 或 right ),而沒有設置的布局則自然成為 內容布局 。
再識 NavigationView
在 Google 推出 NavigationDrawer
compile ‘com.android.support:design:23.1.1‘
ActionBarDrawerToggle
實現返回圖片和動畫效果
http://blog.csdn.net/chencehnggq/article/details/21492417
http://blog.csdn.net/zxm317122667/article/details/50989346
ActionBarDrawerToggle就是DrawerLayout事件的監聽器
ActionBarDrawerToggle有3個方法可以被復寫,分別用來實現DrawerLayout打開,關閉,滑動的事件監聽:
onDrawerOpened DrawerLayout滑出時調用
onDrawerClosed DrawerLayout關閉時調用
onDrawerSlide DrawerLayout滑動時調用
Android - Navigation Drawer