协调器布局自定义滚动行为



我有一个布局,当用户在屏幕上用户滚动时,我使用协调器布局将appbarlayout缩小到工具栏。

默认行为非常准确,但是当用户单击编辑文本字段时出现问题,一旦出现了软键,将屏幕推开(我使用"调整我的活动调整大小"(和AppBar布局不在屏幕上。

我想实现的目标是:

  • 当用户滚动(我已经实现此功能(

  • 每当显示软键盘时

这是可能的吗?

最好的问候。

如果要在显示Soft Keyboard时倒塌AppBarLayout,则可以按照以下两个步骤操作:

1-使用此库来检测软键盘可见性事件: https://github.com/yshrsmz/keyboardVisibilityEvent

2-打开软键盘时,使用此方法折叠您的AppBarLayout

appBarLayout.setExpanded(false);

示例:

KeyboardVisibilityEvent.setEventListener(
    getActivity(),//Or context
    new KeyboardVisibilityEventListener() {
        @Override
        public void onVisibilityChanged(boolean isOpen) {
            if(isOpen){
                appBarLayout.setExpanded(false);
            }
        }
    });

最新更新