RelativeLayout执行属性动画时弹出软键盘遮挡住布局里部分控件导致不可见

问题描述:EditText为了不让软键盘挡住,监听了键盘弹起状态,键盘弹起时马上执行包裹EditText的RelativeLayout上升的动画,由于软键盘弹起速度很快,在动画开始前RelativeLayout的部分控件就被键盘遮挡住了,导致动画结束这些控件一直不可见。
动画开始前,点击EditText会有软键盘弹出

动画结束,由于软键盘移动太快,在动画开始前遮挡的部分不可见了

属性动画:

ObjectAnimator animator = ObjectAnimator.ofFloat(container, "translationY", -mIvLoginBg.getMeasuredHeight())
                .setDuration(200);
        animator.start();
阅读 2.9k
1 个回答

键盘弹出布局上移可以不需要用动画实现
在布局对应的activity中增加设置

android:windowSoftInputMode="stateHidden|adjustPan
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题