我必须在我的应用程序中实现滑动菜单。用户应该能够通过点击它并向左/向右移动来显示/隐藏它。
为了实现这一点,我创建了扩展FrameLayout的自定义SlidableFrameLayout。通过覆盖onTouchEvent方法,我计算幻灯片位置并调用
private void setLeftLayout(int left) {
layout(left, getTop(), getRight(), getBottom());
}
更改SlidableFrameLayout的位置。一切正常,但是当我显示键盘时(在聚焦 EditText 之后),SlidableFrameLayout将其左侧值更改为 0,因此如果菜单关闭,它就会打开。当我隐藏键盘时也会发生同样的事情(通常,它出现在所有阻止调用布局方法的操作中,我认为)。
我无法发明如何解决它。你可以帮帮我吗?如果需要任何其他信息,我会附上。谢谢