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 婆婆66岁祝福语简短
13 今天孩子高考祝福语简短
14 送彩票生日祝福语简短
15 分别祝福语简短情话英文
16 画室揭牌仪式祝福语简短
17 女友妈妈生日祝福语简短
18 离别赠言离职祝福语简短