android 键盘隐藏编辑文本

70gysomp  于 2022-12-09  发布在  Android
关注(0)|答案(7)|浏览(233)

我正在编写一个有聊天功能的应用程序,它看起来如下所示:

由于某种原因,键盘隐藏了X1 M0 N1 X的下部。而且,它似乎隐藏了聊天中的最后2条消息。
XML如下所示:

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".ChatActivity">

    <androidx.recyclerview.widget.RecyclerView
        android:id="@+id/rv_Messages"
        android:layout_width="match_parent"
        android:layout_height="0dp"
        app:layout_constraintHeight_percent="0.9"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <androidx.constraintlayout.widget.ConstraintLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        app:layout_constraintHeight_percent="0.1"
        app:layout_constraintBottom_toBottomOf="parent">

        <EditText
            android:id="@+id/et_Message"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_marginTop="8dp"
            android:layout_marginBottom="8dp"
            android:layout_marginLeft="8dp"
            android:layout_marginRight="8dp"
            android:background="@drawable/et_rounded"
            android:fontFamily="@font/assistant"
            android:hint="Type a message"
            android:textSize="12sp"
            android:paddingLeft="24dp"
            android:inputType="textMultiLine|textPersonName"
            app:layout_constraintStart_toStartOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            app:layout_constraintWidth_percent="0.85"/>

        <ImageButton
            android:id="@+id/ib_Send"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_marginTop="8dp"
            android:layout_marginEnd="8dp"
            android:layout_marginBottom="8dp"
            android:layout_marginHorizontal="8dp"
            style="?android:borderlessButtonStyle"
            android:adjustViewBounds="true"
            android:src="@drawable/ic_path_2830"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintWidth_percent="0.1"/>

    </androidx.constraintlayout.widget.ConstraintLayout>
</androidx.constraintlayout.widget.ConstraintLayout>

有什么原因吗?
在我的清单中,我有:

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

**EDIT:**据我所知,键盘正好打开到EditText内部文本的底部。由于该文本位于EditText的中间,它似乎隐藏了较低的灰色部分。因此,据我所知,需要从EditText外部的底部开始,就像从EditText的外部形状开始,而不是从文本开始的地方开始。

例如它从这里开始;

代替:

据我所知,我需要一些像“底部空白”从键盘。

只是为了澄清-我知道AdjustResize/AdjustPanAdjustResize缩小了我的EditText,所以我试图避免它。AdjustPan完成了这项工作,但它将屏幕移动到文本的底部!文本的底部不是EditText的底部。这是我试图实现的,所以AdjustPan不仅仅解决了问题。添加marginBottom也不能解决这个问题,因为它只是让AdjustPan移动屏幕,再次移动到文本的底部。我试图“愚弄”AdjustPa n或添加一些偏见。

谢谢你

pdsfdshx

pdsfdshx1#

请尝试在清单中使用android:windowSoftInputMode="adjustResize"

niwlg2el

niwlg2el2#

在你的清单中,把这个写在你的具体活动中:

android:windowSoftInputMode="adjustResize|stateHidden"
3npbholx

3npbholx3#

将以下内容添加到您的活动中:

android:windowSoftInputMode="adjustPan"

或者这样:

android:windowSoftInputMode="adjustResize|stateHidden"
mftmpeh8

mftmpeh84#

在你的载货单上写上

android:windowSoftInputMode="adjustResize"

此外,如果仅添加上述内容无法解决问题,或者,请尝试为编辑文本或放置编辑文本的布局给予“下边距”。
假设

android:layout_marginBottom="10dp"

您也可以将编辑文本放在布局中,并在其周围给予边距。

gopyfrb3

gopyfrb35#

您已经采用了两个约束布局并以90:10的比例划分了整个屏幕。如果没有此固定比例的限制,则可以将比例更改为85:15。

app:layout_constraintHeight_percent="0.85"
 app:layout_constraintHeight_percent="0.15"

在后一种情况下,完整的EditText可见。

7uhlpewt

7uhlpewt6#

你用vertical orientation在一个linearlayout中制作所有的edittext,这个lineralayoutscroolview下制作,就像ex一样。

<scroolview>
  <linearlayout>
 ---text view your all---
  </linearlayout>
<scroolview>
wnrlj8wa

wnrlj8wa7#

尝试将android:fitsSystemWindows=“true”添加到XML格式的父容器中

相关问题