【问题标题】:Android keyboard overlapping input fields, view doesn't scroll automaticallyAndroid键盘重叠输入字段,视图不会自动滚动
【发布时间】:2014-05-28 14:06:09
【问题描述】:

我有same problem described in this question,但在Trigger.io。不幸的是,该解决方案需要编辑 AndroidManifest.xml,这在 Trigger.io 中似乎是不可能的

在我的某些应用视图中,Android 键盘与某些输入字段重叠,因此难以输入值。

这里有几个显示问题的屏幕截图。 “Senha”字段被 android 键盘覆盖,即使用户输入了值,视图也不会滚动到它。

我尝试了 trigger.io 电子邮件支持,但他们让我在这里搜索答案...

【问题讨论】:

  • 抱歉,改变键盘平移或调整应用大小的唯一方法是通过清单。如果你不能编辑它,你就会被卡住。
  • 请为此粘贴清单和 xml 文件
  • @GabeSechan 在onCreate() 工作期间不应该getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE); 吗?
  • @matiash 没试过,我怀疑它会——只要你在设置内容视图之前调用它(其他各种窗口参数只有在设置活动视图之前正确设置,我在这里假设相同)。
  • 在许多不同的设备类型中遇到此错误(错误 5497),其中 Android 忽略(或失败,不确定)使用与布局调整大小/平移有关的键盘设置。值得庆幸的是,有人创建了一个帮助类,它似乎可以在所有设备上正常工作,并且是单行实现:github.com/madebycm/AndroidBug5497Workaround/blob/master/…

标签: android scroll android-webview trigger.io


【解决方案1】:

如果您想对 AndroidManifest.xml 进行更改,最好的办法是为您的应用创建一个原生模块:

https://trigger.io/docs/current/api/native_modules/index.html

具体来说,您可以通过创建自定义构建步骤来修改清单:

https://trigger.io/docs/current/api/native_modules/native_build_steps.html

即类似:

[
    {
        "do": {
            "android_add_to_activity_manifest_attributes": {
                "attributes": {
                    "android:windowSoftInputMode": "adjustResize"
                }
            }
        }
    }
]

【讨论】:

  • adjustResize 为我工作。但除此之外,我必须在 Android 上禁用全屏(显示模块)。谢谢!
  • 也许你们中的某个人可以为此发布一个社区模块?这将使我们其他人不必构建和维护原生模块......
【解决方案2】:

这对我有用...

先添加这个

final bottom = MediaQuery.of(context).viewInsets.bottom;

然后使用 SingleChildScrollView() 像这样围绕主小部件(无论您使用什么,例如 Column、ListView 等)...

你需要 "reverse: true"

Widget build{
return Scaffold(
body: SingleChildScrollView(
reverse: true;
child: Container(...

Scaffold 也需要这两行代码..

return Scaffold(
resizeToAvoidBottomInset: false,
resizeToAvoidBottomPadding: false,
body: SingleChildScrollView(...

最后,为您的 EdgeInsets 引用“底部”..

body: SingleChildScrollView(
reverse: true,
child: Padding(
padding: EdgeInsets.only(bottom: bottom),
child: Container(...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-11
    • 1970-01-01
    • 1970-01-01
    • 2016-08-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多