Android使用CoordinatorLayout实现底部弹出菜单
本文实例为大家分享了使用CoordinatorLayout实现底部弹出菜单的具体代码,供大家参考,具体内容如下
第一步:添加依赖:
compile"com.android.support:design:${project.properties.get("support")}"
第二步:布局引用:
//页面布局
第三步:使用:
//找到BottomSheetBehavior BottomSheetBehaviorbehavior=BottomSheetBehavior.from(findViewById(R.id.au_bottom_sheet)); //设置弹出高度 behavior.setPeekHeight(WindowHeight/2); //默认隐藏 behavior.setState(BottomSheetBehavior.STATE_HIDDEN); //添加消失监听 behavior.setBottomSheetCallback(bottomSheetCallback);
添加菜单消失监听:
//状态监听,通过这个监听菜单是否消失
privateBottomSheetBehavior.BottomSheetCallbackbottomSheetCallback=newBottomSheetBehavior.BottomSheetCallback(){
@Override
publicvoidonStateChanged(@NonNullViewbottomSheet,intnewState){
if(newState==BottomSheetBehavior.STATE_HIDDEN){
if(!isBehaviorShowing(behavior)){
//菜单已经消失
}
}
}
@Override
publicvoidonSlide(@NonNullViewbottomSheet,floatslideOffset){
//滑动监听
}
};
判断是否可见:
privateBooleanisBehaviorShowing(BottomSheetBehaviorbehavior){
returnbehavior.getState()==BottomSheetBehavior.STATE_COLLAPSED
||behavior.getState()==BottomSheetBehavior.STATE_EXPANDED
||behavior.getState()==BottomSheetBehavior.STATE_SETTLING;
}
收回菜单:
behavior.setState(BottomSheetBehavior.STATE_HIDDEN);
弹出菜单:
behavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
热门推荐
10 朋友新年祝福语大全 简短
11 新年祝福语简短大方兔年
12 搬新家礼物祝福语简短
13 同学见面花束祝福语简短
14 五一假期祝福语幽默简短
15 离职欢送敬酒祝福语简短
16 对学弟的祝福语简短
17 考老师辞职祝福语简短
18 祝福语驱散霉运的话简短