2011-06-25 14 views
0

こんにちは私はユーザーの要求で画面に表示されているコントロールにedittextコントロールをラップしました。ユーザーがキーボードの「完了」ボタンを押すまで画面全体がオーバーレイされます。android - オンデマンドでソフトキーボードを表示

明示的に画面にコントロールを表示できません。ユーザーがコントロールにタップしたときにのみ表示されます。何か不足していますか?

私もこれを試してみて、私はテキストの編集がオンに存在することをオーバーレイを起動したとき、それはそれブリンアップされていません。windowSoftInputMode:

customCOntrol.showKeyboard(); 

public void showKeyboard() 
    { 
     InputMethodManager imm = (InputMethodManager)_context.getSystemService(Context.INPUT_METHOD_SERVICE); 
     imm.hideSoftInputFromWindow(this._textView.getWindowToken(), InputMethodManager.SHOW_IMPLICIT); 
    } 

ここで私は、configファイルのアンドロイドの画面自体の上に持ってsettigがあります= "stateHidden | adjustPan"

は、あなたが呼び出しているあなたのshowKeyboard機能では、事前

答えて

9

にありがとう:

imm.hideSoftInputFromWindow(this._textView.getWindowToken(), InputMethodManager.SHOW_IMPLICIT); 

これはウィンドウからsoftInputキーボードを隠すでしょう! キーボードを表示しますか?はい、あなたは使用している場合:

imm.showSoftInput(view, flags, resultReceiver); 

編集:私はあなたにもInputMethodManagerからキーボードを切り替えることができると思い、試してみてください。

imm.toggleSoftInput(0, 0); 
+2

toggleSoftInput(0、0)ありがとうございました。私は私がhideとした精神的な誤りを信じることができない:)最初のものはbtwを働かなかった。 – dropsOfJupiter

+0

1つの質問、キーボードがアップですが、コントロールの焦点はあなたではないので、ユーザーはまだedittextをタップする必要があります。 edittextに点滅するインジケータを表示させるにはどうすればよいですか? – dropsOfJupiter

+0

はeditText.requestFocus()によって解決されました。 – dropsOfJupiter

-1

@dropsOfJupiter

あなたが行うことができます。editText.requestFocusをEditTextリファレンスを含むアクティビティーまたはフラグメントを起動するときに、()を押します。これにより、EditTextにフォーカスが移り、SoftKeyboardが表示されます。

こちらがお役に立てば幸いです。

関連する問題