5

我对 Android 中的动画几乎没有(阅读:没有)经验,但想在键盘出现时实现动画。实际上,整个活动似乎都在向上滑动(就像键盘在活动下方并将其向上推),而不是仅向上移动到选定的EditText.

有谁知道如何做到这一点?

4

2 回答 2

6

在最新版本的 Android 操作系统(Android 版本 11)中,他们添加了一组新的 API,让您可以将应用程序的内容与 IME(输入法编辑器,也称为软键盘)和系统栏同步,因为它们在屏幕上和屏幕外都具有动画效果,从而实现了很多更容易创建自然、直观和无卡顿的 IME 转换。

WindowInsetsAnimation.Callback

对于帧完美的过渡,一个新的插入动画侦听器会在系统栏或 IME 动画时通知应用程序对插入的每帧更改。

在此处输入图像描述

WindowInsetsAnimationController

应用程序可以通过WindowInsetsAnimationController API 控制 IME 和系统栏转换。

在此处输入图像描述

于 2020-03-19T05:29:33.373 回答
3

应用程序不会收到键盘何时出现的通知,Android 框架本身负责滑动应用程序或重新布局。所以定制是不可能的。这可能是一件好事 - 键盘是一个单独的应用程序,并且编写了一个我什至不想尝试编写这样一个动画的键盘的一半,我们永远不会让它看起来正确的所有各种方式该应用程序可以做到。

您将获得的最接近的方法是指定要平移的字段,而不是在打开键盘时调整大小。

于 2013-08-19T14:43:29.570 回答