在包含ScrollView的活动中强制调整adjustPan

Und*_*oid 13 android android-layout

我的布局看起来像这样:

<RelativeLayout>
    <RelativeLayout>
    </RelativeLayout>
    <ViewFlipper>
        <ScrollView>
            <LinearLayout>
                <EditText />
            </LinearLayout>
        </ScrollView>
    </ViewFlipper>
    <RelativeLayout>
    </RelativeLayout>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)

当专注于中间的EditText时,软键盘会按预期弹出,但它总是调整布局大小,即使我android:windowSoftInputMode="adjustPan"在清单中也是如此.

调整大小的问题是只有ScrollView会缩小,将RelativeLayouts保持在其上方和下方,这几乎可以完全掩盖EditText.

当键盘显示时,我试图隐藏RelativeLayouts(这是另一个悲伤的故事),但adjustPan听起来更合适.但是它对此活动没有影响.

尽管存在ScrollView,我怎样才能强制adjustPan工作?

更新:

所以不会让我回答我自己的问题,但解决方案是android:isScrollContainer="false"在ScrollView上设置.

Ish*_*iaq -2

在清单的活动标签中尝试此操作:

android:windowSoftInputMode="stateVisible|adjustPan"
Run Code Online (Sandbox Code Playgroud)

  • 根据 android 文档,您不应该同时使用 adjustmentResize 和 adjustmentPan 标签。应该是其中之一。 (5认同)