在Adapter中覆盖Activity onbackpressed方法

时间:2018-03-03 16:11:06

标签: android adapter

我已经实施了“BottomSheet'在我的申请中。在我的自定义适配器中调用其行为方法。现在我想要折叠或隐藏“BottomSheet”#39;按下后退按钮时。为此,我如何覆盖' onbackpressed'适配器中的方法来实现它。

这是我的适配器。

{{1}}

}

2 个答案:

答案 0 :(得分:1)

        mBottomSheetBehavior = BottomSheetBehavior.from(bottomSheet); 
        if(mBottomSheetBehavior.getState() !=     
            BottomSheetBehavior
                  .STATE_EXPANDED) {

             super.onBackPressed();

          }
            else {
                     mBottomSheetBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);

            }

将此代码放入您活动的onBackPressed

答案 1 :(得分:0)

你不能。

简单的方法是在活动中覆盖活动中的onBackPressed()。

或让你的东西打开一个对话框。或上下文。或者创建一个自定义视图并覆盖onKeyDown(int keyCode,KeyEvent事件)。或者在bottom_sheet上使用setOnKeyListener(View.OnKeyListener l)。 docs link。对于要消耗的按键,你应该返回true,但是我不能保证这对于现在的系统键实际工作。