1

アクティビティ内に2つの編集テキストとシークバーがあります。編集テキストにフォーカスがある場合でも、シークバーに触れたときにソフトキーボードがポップアップしないようにしたいと思います。シークバーのフォーカスを強制しようとしましたが、どちらも機能しませんでした。

onProgressChanged3つのSeekBarメソッド( 、、onStopTrackingTouchおよび)のソフトキーボードを1つずつ非表示にしようとしましたonStartTrackingTouchが、これは機能しません。

それは可能ですか、そしてそれをどのように達成するのですか?

どうも


private void hideSoftKeyboard(){
    // HIDE SOFTKEYBOARD
    InputMethodManager imm = (InputMethodManager) getSystemService(Activity.INPUT_METHOD_SERVICE);
    imm.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0);
}

/**
 * SEEKBAR Start tracking
 */
public void onStartTrackingTouch(SeekBar seekBar) {

    // HIDE SOFTKEYBOARD
    hideSoftKeyboard();

}
4

1 に答える 1

1

申し訳ありませんが、何度も検索した結果、解決策が見つかりました..ここにあります:

private void hideSoftKeyboard() {
    // HIDE SOFTKEYBOARD
    //InputMethodManager imm = (InputMethodManager) getSystemService(Activity.INPUT_METHOD_SERVICE);
    // imm.toggleSoftInput(InputMethodManager.HIDE_IMPLICIT_ONLY, 0);

    InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
    imm.hideSoftInputFromWindow(mSeekBar.getWindowToken(), 0);

}
于 2012-09-18T11:58:56.683 に答える