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

Android 协调器布局自定义滚动行为,android,android-softkeyboard,android-coordinatorlayout,custom-scrolling,Android,Android Softkeyboard,Android Coordinatorlayout,Custom Scrolling,我有一个布局,当用户在屏幕上滚动时,我使用coordinator布局将appbarlayout折叠到工具栏 默认行为非常准确,但当用户单击编辑文本字段时会出现问题,一旦软键盘出现,屏幕就会向上推(我使用标志“调整我的活动的大小”),并且appbar布局会离开屏幕 我想要实现的是: 当用户滚动时,将appbar布局折叠到工具栏(我已经实现了这一点) 每当显示软键盘时,将appbar布局折叠到工具栏 这可能吗 致以最诚挚的问候。如果您想在显示软键盘时折叠AppBarLayout,可以执行以下两个

我有一个布局,当用户在屏幕上滚动时,我使用coordinator布局将appbarlayout折叠到工具栏

默认行为非常准确,但当用户单击编辑文本字段时会出现问题,一旦软键盘出现,屏幕就会向上推(我使用标志“调整我的活动的大小”),并且appbar布局会离开屏幕

我想要实现的是:

  • 当用户滚动时,将appbar布局折叠到工具栏(我已经实现了这一点)

  • 每当显示软键盘时,将appbar布局折叠到工具栏

这可能吗


致以最诚挚的问候。

如果您想在显示
软键盘时折叠
AppBarLayout
,可以执行以下两个步骤:

1-使用此库检测软键盘可见性事件:

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

appBarLayout.setExpanded(false);
例如:

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

如果要在显示
软键盘时折叠
AppBarLayout
,可以执行以下两个步骤:

1-使用此库检测软键盘可见性事件:

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

appBarLayout.setExpanded(false);
例如:

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