11

アプリにカスタム キーパッドがあるため、ソフト キーパッドを非表示にしました。edittext をクリックしたときに、ソフト キーパッドがポップアップしないようにします。そのため、ソースから非常に多くの方法を試しましたが、editText.setFocusable(false);. しかし、問題は、クリックしたときに edittext が強調表示されず、カーソルさえ表示されないことです。マニフェストでを使用してみてInputManagerlink 1link 2などの多くを参照しましたが、これらの手法は少なくともアプリのソフトキーパッドを隠しません。最後に setFocusable でこれを取得しましたが、強調表示の問題とカーソルの非表示の問題があり、onClickListener でも機能しませんでした。誰かがこの問題の正確な解決策を教えてもらえますか? コード スニペットを歓迎します。 android:windowSoftInputMode="stateAlwaysHiddenrequestFocus()

4

5 に答える 5

1

これをマニフェストで使用してください:

android:configChanges="orientation|keyboardHidden"         
android:windowSoftInputMode="stateHidden" 
于 2013-06-18T13:26:19.673 に答える
1

menifist にメソッドを追加する必要はありません。このコードを追加するだけです。ボタンをクリックして値を取得すると、自動的に非表示になります。

ソフトキーボードを非表示にするには、クリック リスナー メソッドでこのコードを使用します。

InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); imm.hideSoftInputFomWindow(edittext.getWindowToken(),0);

このコードがうまくいくことを願っています。

于 2013-06-26T06:44:15.903 に答える
1

アクティビティクラスでこれを試してください

getwindow().setsoftInputMode(winowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);

これはソフトキーパッドの回避です

于 2012-09-12T10:32:45.453 に答える
1

これを試して:

InputMethodManager imm = (InputMethodManager)getSystemService( Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFomWindow( edittext.getWindowToken(), 0);
于 2013-06-11T05:27:23.767 に答える
1

editText.setOnTouchListener を編集し、新しい OnTouchListener を作成するときに次のようなことをしないとどうなりますか。

editText.setOnTouchListener(new OnTouchListener(){

    @Override
    public boolean onTouch(View v, MotionEvent event) {
        return true;
    }

});
于 2013-11-22T15:55:37.917 に答える