当前位置: 首页 > 知识库问答 >
问题:

android软键盘背后隐藏的报警对话框

鲁霄
2023-03-14

这是我的自定义警报对话框代码-

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fillViewport="true"
        android:scrollbars="vertical">

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/inset_background_dialog"
            android:padding="@dimen/dialog_elements_margin">

            <TextView
                android:id="@+id/text_add_address_title_addnewaddress"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true"
                android:layout_alignParentTop="true"
                android:text="@string/add_new_address_title_addnewaddress"
                android:textAppearance="?android:attr/textAppearanceMedium"/>

            <ImageView
                android:id="@+id/image_close_dialogue_addnewaddress"
                android:layout_width="@dimen/dialog_close_button"
                android:layout_height="@dimen/dialog_close_button"
                android:layout_alignParentEnd="true"
                android:layout_alignParentRight="true"
                android:layout_alignParentTop="true"
                android:layout_marginTop="4dp"
                android:src="@drawable/ic_unchecked_black"/>

            <EditText
                android:id="@+id/edit_address_title_addnewaddress"
                style="@style/roundedEditText"
                android:layout_below="@+id/text_add_address_title_addnewaddress"
                android:hint="@string/address_title_hint_addnewaddress"/>

            <EditText
                android:id="@+id/edit_mobile_number_addnewaddress"
                style="@style/roundedEditText"
                android:layout_below="@+id/edit_address_title_addnewaddress"
                android:hint="@string/mobile_number_hint_addnewaddress"
                android:inputType="number"/>

            <EditText
                android:id="@+id/edit_apartment_no_addnewaddress"
                style="@style/roundedEditText"
                android:layout_below="@+id/edit_mobile_number_addnewaddress"
                android:hint="@string/house_no_hint_addnewaddress"/>

            <EditText
                android:id="@+id/edit_landmark_addnewaddress"
                style="@style/roundedEditText"
                android:layout_below="@+id/edit_apartment_no_addnewaddress"
                android:hint="@string/landmark_hint_addnewaddress"/>

            <EditText
                android:id="@+id/edit_location_addnewaddress"
                style="@style/roundedEditText"
                android:layout_below="@+id/edit_landmark_addnewaddress"
                android:hint="@string/address_hint_addnewaddress"/>

            <Button
                android:id="@+id/save_address_addnewaddress"
                android:layout_width="match_parent"
                android:layout_height="@dimen/dialog_elements_height"
                android:layout_below="@+id/edit_location_addnewaddress"
                android:layout_centerHorizontal="true"
                android:layout_marginTop="@dimen/dialog_elements_margin"
                android:background="@drawable/add_button_back_about_product"
                android:text="@string/save_address_button_addnewaddress"
                android:textAllCaps="false"
                android:textColor="@color/tabSelectedTextColor"/>
            </RelativeLayout>

    </ScrollView>

</RelativeLayout>

问题是,底部的编辑文本字段隐藏在软键盘后面。我尝试在特定活动中将android清单更新为android:WindowsoftinPutmode=“adjustresize”,但没有成功。有什么解决办法吗?

共有1个答案

吴品
2023-03-14
<ScrollView>
<LinearLayout android:orientation="vertical"
        android:scrollbars="vertical"
        android:scrollbarAlwaysDrawVerticalTrack="true">
    <EditView />
    <Button />
</LinearLayout>

在LinearLayout中设置UI并尝试。

 类似资料:
  • 我想在AlertDialog关闭后隐藏软键盘,但它仍然可见。这是我的代码:

  • 我有一个自定义的Spinner类,它使用一个警报对话框来显示它的内容,它有“提交”和“取消”按钮。警报对话框有一个编辑文本,其他都是只读标签。在单击编辑文本时,虚拟键盘出现,它移动布局,向上移动位,但按钮保持隐藏。我希望按钮也是可见的。 在活动类中:-this.getWindow().setSoftinPutMode(Windowmanager.layoutParams.soft_input_ad

  • 我有一个AutoCompleteTextView,它像往常一样在用户键入3个字母后提供建议。一旦我触摸建议列表,我想隐藏软键盘一次。我在下面用表格布局所做的只是在单击除建议列表之外的任何地方时隐藏键盘。 可扩展置标语言 爪哇岛 用于自定义列表的 XML

  • 我需要隐藏软键盘以响应单击按钮。我看到了一些关于这方面的帖子,我尝试了: 这很有效。但现在我有两个EditText视图。无论选择了哪个EditText,现在如何隐藏软键盘?我也试过了 ,但那不起作用... 谢谢你的帮助! 编辑:找到解决方案。贴在下面。

  • 我试图防止在SearchView上调用requestFocus()后键盘出现,但在Android8上没有解决方案。 我试过: /*3/ /*4/ onGlobalLayout()工作,但软键盘显示了近0.5秒后消失。 即使在调用requestFocus()之后,是否可以帮助隐藏软键盘?

  • 使用操作栏导航加载第二个片段后 重新加载另一个片段,动作栏仍然是visibile 我用一个测试项目用最小的代码加载片段,行为是一样的,分裂条被软键盘隐藏。我怎样才能使它从一开始就显示拆分条?