Androidソフトキーボードに関するいくつかの小さな問題

Androidのソフトキーボードには多くの用途があります。ソフトキーボードの一般的に使用される設定は次のとおりです。

1.画面が横向きの場合、入力ボックスをクリックしてキーボードソリューション全体を表示します。EditText、searchview、その他のコントロールを追加します

1

android:imeOptions="flagNoExtractUi"

2.画面が垂直の場合、Androidは半分の画面を表示します。

case1:入力ボックスが真ん中と下の位置にあるこの場合、キーボードが入力ボックスをブロックすることがあります。解決策:マニフェストにアクティビティを設定します

1

android:windowSoftInputMode="adjustResize"

このように、アクティビティのメインウィンドウは常にサイズ変更され、キーボード用のスペースを提供します

case2:入力ボックスは上側にあります。通常の状況では問題はありませんが、インターフェースがlayout_weight、つまり比重を使用してページを垂直方向に配置する場合、ソフトウェアディスクはウィンドウ全体を圧縮し、入力ボックスの一部になります圧縮される。解決策:マニフェストにアクティビティを設定します

1

android:windowSoftInputMode="adjustPan"

このように、キーボードは元のウィンドウを圧縮せず、下のコンテンツの一部のみをカバーします。この方法では、入力ボックスは圧縮されません。

3.アクティビティを入力し、入力ボックスをフォーカスすると、ソフトキーボードが自動的にポップアップします。自動的にポップアップしたくない場合は、最初に他の重要でないコントロールにフォーカスを移し、次にタイマーを設定してから、EditTextにフォーカスを移します!

4.ソフトキーボードが現在ポップアップ状態かどうかを確認する

1

if(getWindow().getAttributes().softInputMode==WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE)

5.ソフトキーボードを手動で非表示にする

1

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN);

6.ソフトキーボードを手動でポップアップします

1

((InputMethodManager)getSystemService(INPUT_METHOD_SERVICE)).toggleSoftInput(0,InputMethodManager.HIDE_NOT_ALWAYS);

10件の元の記事を公開 11のように 20,000以上の訪問

おすすめ

転載: blog.csdn.net/u013323018/article/details/83186056