Android Studio - EditText 输入移动 TextView

Posted

技术标签:

【中文标题】Android Studio - EditText 输入移动 TextView【英文标题】:Android Studio - EditText input moves TextView 【发布时间】:2020-08-12 19:42:53 【问题描述】:

我在 EditText 下方有一个文本视图。 当我在 EditText 中输入数据时,TextView 向上移动,因此它仍然可见。 我的意思是我输入数据,键盘出现,TextView 也向上移动。 但我不希望这样,我希望 TextView 保持原样。 我正在使用 ConstraintLayout 并且无法更严格地设置约束,因为如果我按下按钮,TextView 将充满数据。

    <EditText
        android:id="@+id/editText"
        android:layout_
        android:layout_
        android:ems="10"
        android:inputType="textPersonName"
        android:layout_marginTop="50dp"
        app:layout_constraintTop_toTopOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        android:hint="@string/hint1"
        android:importantForAutofill="no"/>

    <ScrollView
        android:id="@+id/scrollView"
        android:layout_
        android:layout_
        android:layout_marginTop="24dp"
        android:layout_marginBottom="24dp"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/button"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constrainedHeight="true">

        <TextView
            android:id="@+id/textView"
            android:layout_
            android:layout_
            android:text="@string/emptyString" />

    </ScrollView>

【问题讨论】:

【参考方案1】:

我认为,您已将文本视图放在滚动视图中,这就是它以这种方式运行的原因。

【讨论】:

【参考方案2】:

我找到了解决方案,它在起始活动标记中添加了这一行: android:windowSoftInputMode="adjustPan"

像这样:

<activity android:name=".MainActivity"
            android:windowSoftInputMode="adjustPan">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

现在当键盘出现时,TextView 不再移动。 它被键盘覆盖,但我喜欢这样而不是移动视图。

【讨论】:

以上是关于Android Studio - EditText 输入移动 TextView的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio - EditText 输入移动 TextView

Android Studio中的EditText控件使用详解

在 android studio 中使用 EditText 上的数字键盘

Android,Studio的EditText控件的回车监听事件无效

透明的 EditText Android Studio

Audroid studio_EditText