安卓專案實戰之ByeBurger一句程式碼實現標題欄、導航欄滑動隱藏
阿新 • • 發佈:2018-12-11
簡介
效果圖
內容View可為:ViewPager中巢狀RecycleView 內容View可為:NestedScrollView包裹TextView 內容View可為:NestedScrollView包裹WebView
如何使用
1.在project的build.gradle檔案中新增:
allprojects {
repositories {
jcenter()
maven { url "https://jitpack.io" }
}
}
2.在app的builde.gradle檔案中新增:
dependencies { compile 'com.github.githubwing:ByeBurger:1.2.3' compile 'com.android.support:design:25.0.0' }
3.你只需要在佈局中,使用CoordinatorLayout作為根佈局,然後向你的任何View中插入一句app:layout_behavior屬性,即可實現滑動的隱藏和顯示。你的標題欄可以是Toolbar或者LinearLayout或者什麼鬼,同樣你的底部導航欄可以是最新的BottomNavigationView亦或者TabLayout在古老一點的RadioButton都可以!
最新添加了對懸浮按鈕的支援。
<android.support.design.widget.CoordinatorLayout> // 中間內容View,只有實現NestScorll介面View的才可以實現監聽,例如RecyclerView、NestScrollView.在ListView下,是不生效的 <Viewpager /> <Toolbar app:layout_behavior="@string/bye_burger_title_behavior" /> <BottomTab android:layout_gravity="bottom" app:layout_behavior="@string/bye_burger_bottom_behavior" /> </android.support.design.widget.CoordinatorLayout>
注意:
- CoordinatorLayout類似於FrameLayout,所以注意xml層次,Title和Bottom Tab要在xml下方。
- 只有實現NestScorll介面View的才可以實現監聽,例如RecyclerView、NestScrollView.在ListView下,是不生效的。
- 所有需要隱藏的,必須作為CoordinatorLayout的直接子view
你也可以手動呼叫如下方法,來控制顯隱:
ByeBurgerBehavior.from(mToolbar).hide()
ByeBurgerBehavior.show(mFloatButton).show()