テキストフィールドが見えるように画面をスクロールさせる方法はありますか?
ソフトキーボードが開いたときに表示される内容を制御する方法を尋ねていますか? windowSoftInputMode で遊ぶこともできます。詳細については、 開発者ドキュメント を参照してください。
同じ問題がありました。次のコードを試してください:
Android:windowSoftInputMode="adjustPan"
入力を保持するアクティビティのアクティビティタグのmanifest.xmlに追加します。例:
<activity
Android:name=".Activities.InputsActivity"
...
Android:windowSoftInputMode="adjustPan"
/>
画面の下部に配置されたEditTextビューの上部にソフトキーボードがあるという同じ問題がありました。 AndroidManifest.xmlファイルの関連するアクティビティに1行追加することで解決策を見つけることができました。
Android:windowSoftInputMode="adjustResize|stateHidden"
これは、アクティビティタグ全体の外観です。
<activity
Android:name="com.my.MainActivity"
Android:screenOrientation="portrait"
Android:label="@string/title_activity_main"
Android:windowSoftInputMode="adjustResize|stateHidden" >
</activity>
ここで最も重要な値はadjustResizeです。これにより、UI全体がシフトアップされ、ソフトキーボード用のスペースが確保されます。
ScrollViewを追加して、スクロールしたいものを何でもラップしてみませんか。ここに、私が実際に行った方法を示します。実際には、スクロールしないヘッダーを上部に残し、ダイアログウィジェット(特にEditTexts)はソフトキーパッドを開くとスクロールします。
<LinearLayout Android:id="@+id/HeaderLayout" >
<!-- Here add a header or whatever will not be scrolled. -->
</LinearLayout>
<ScrollView Android:id="@+id/MainForm" >
<!-- Here add your edittexts or whatever will scroll. -->
</ScrollView>
通常、ScrollView内にLinearLayoutがありますが、それはあなた次第です。また、少なくとも私のデバイスでは、ScrollbarスタイルをoutsideInsetに設定すると役立ちます。
あなたがする必要があるのは
Android:isScrollContainer="true"
ソース: http://www.davidwparker.com/2011/08/25/Android-fixing-window-resize-and-scrolling/
古いスレッドを復活させてすみませんが、EditText要素にAndroid:imeOptions="flagNoFullscreen"
を設定することについて誰も言及していません
Android:windowSoftInputMode="adjustPan"
Android:isScrollContainer="true"
Android EditTextでは機能しますが、webviewやxwalkviewでは機能しません。ソフトキーボードがwebviewまたはxwalkviewで入力を非表示にすると、Android:windowSoftInputMode="adjustResize"
が使用されます
トラックボールを使用してスクロールさせることができると信じています。トラックボールは、最終的に選択方法を介してプログラムで実現される可能性がありますが、単なるアイデアです。トラックボール方式は通常機能することを知っていますが、これを実行してコードから機能させる正確な方法については、わかりません。
助けてください。
キーボードカバーがtext.inside onCreat()アクティビティメソッドを編集する相対アクティビティにこの1行を追加します。
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE | WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE);
私はこれが古いことを知っていますが、上記の解決策のどれも私にとってはうまくいきませんでした。広範なデバッグの後、私は問題を見つけました。解決策は、styles.xmlでAndroid:windowTranslucentStatus
属性をfalseに設定することです