我有一個簡單的佈局,如下圖所示:XML安卓:windowSoftInputMode工作不正是我想要
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<ScrollView
android:layout_width="match_parent"
android:layout_height="200dp"
android:fadeScrollbars="false"
android:gravity="center_vertical" >
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:lineSpacingMultiplier="1.2" />
</ScrollView>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:descendantFocusability="beforeDescendants"
android:focusableInTouchMode="true"
android:orientation="vertical" >
<EditText
android:layout_width="match_parent"
android:layout_height="290dp"
android:ems="10"
android:gravity="top" />
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Submit"/>
</LinearLayout>
</RelativeLayout>
基本上,有一個ScrollView
,指出問題的內部TextView
,和我想要的用戶在EditText
內輸入答案。
在我AndroidManifest
,我已經包括以下內容:
<activity
android:screenOrientation="portrait"
android:windowSoftInputMode="???" >
</activity>
凡 「???」是,我試過使用以下內容:adjustPan
,adjustResize
和adjustPan|adjustResize
。
隨着adjustPan
和adjustResize
,我遇到了同樣的事情:當我鍵入和文本離開視圖,屏幕自動向下滾動,因此鍵盤不包括正在鍵入的文本。然而,這裏的問題在於,當我嘗試突出顯示所鍵入的文本以選擇全部,複製,剪切或粘貼時,通常出現在頂部的複製/剪切/粘貼菜單欄無法被觸及,因爲它已被滾出看法。如果我嘗試手動到達該菜單欄,則文本不再突出顯示。
使用adjustPan|adjustResize
時,複製/剪切/粘貼菜單欄保持在視圖內和觸手可及的範圍內,但如果輸入得太多,鍵入的文本最終會被鍵盤遮擋。
那麼我怎麼能仍然鍵入輸入的文本永遠不會被遮擋,並仍然有複製/剪切/粘貼菜單欄,並允許我根據需要偶爾進行編輯?