强制BottomSheet在用户拖动时隐藏

时间:2016-08-02 11:05:16

标签: android android-support-library android-support-design

即使用户拖动,我也试图强制隐藏BottomSheet

对于讨论,我们说我的应用只包含两种观点:
- Button
- BottomSheet

在开头BottomSheet展开。当我单击按钮时,我希望BottomSheet完全隐藏,无论用户是否正在拖动。我想我只需要将BottomSheet的状态设置为折叠或隐藏,但这仅在用户未拖动BottomSheet时才有效。如果他拖动,则没有任何反应,BottomSheet仍然可见。

以下是我尝试的内容:
- 将peekHeight设为0
- 将州设置为hidden
- 将州设置为collapsed

但这一切都没有效果。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

 @Override
public void onBackPressed() {
    if (mBottomSheetBehavior.isHideable()) {
        super.onBackPressed();
    }else {
        mBottomSheetBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
    }
}