【问题标题】:Trying not to show the buttons showing when I click in one of the EditText of the form尝试不显示当我单击表单的 EditText 之一时显示的按钮
【发布时间】:2021-06-01 14:47:01
【问题描述】:

我正在使用 Android Studio 开发一个 Android 应用。我有一个表单,底部有几个字段和 2 个按钮,用于验证或返回。问题是,只要我单击表单的其中一个 EditText,2 个按钮就会跟随键盘。

如何防止这 2 个按钮出现并强制它们停留在页面底部,隐藏在键盘后面。表单位于 ScrollView 中,后者位于 ConstraintLayout 中。我尝试了很多事情,比如在 ConstraintLayout 中设置我的 2 个按钮。同样在父级底部带有约束的RelativeLayout 之外...我还尝试使用LinearLayout 而不是ConstraintLayout 并对每个组件进行加权,但按钮仍然存在。我发现的唯一方法是使用垂直 LinearLayout 而不加权组件。但是如果屏幕太小,我会遇到看不到按钮的问题。我希望按钮留在底部。

正常吗?我是否必须通过在专注于其中一个 TextEdit 或布局时隐藏按钮来从代码中修复它?

另一件事是,如果我点击最后一个字段(“Ville”),表单不会移动,我仍然看到前 2 行...

非常感谢您的帮助

【问题讨论】:

    标签: android android-studio android-layout button android-edittext


    【解决方案1】:

    在您的manifest.xml 上,您可以将android:windowSoftInputMode 设置为adjustPan

    <activity
     android:name=".MainActivity"
     android:windowSoftInputMode="adjustPan" />
    

    来自 Android 文档:

    不要调整窗口大小来为软输入区域腾出空间;反而 当焦点在其中移动时平移窗口的内容,以便 用户可以看到他们正在输入的内容。这通常是不太可取的 而不是平移,因为用户可能需要关闭输入区域才能获得 在窗口的某些部分并与之交互

    【讨论】:

    • 非常感谢。正是我需要的。它解决了我遇到的两个问题。
    • 不要忘记检查答案是否已接受以帮助他人。
    • 我当然会,但显然我必须等待 5 分钟 :)
    猜你喜欢
    • 1970-01-01
    • 2022-01-05
    • 2022-01-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-19
    • 1970-01-01
    • 2012-07-30
    相关资源
    最近更新 更多