やりたいこととしましては、
ログインをするためのAlertDialogが表示された時に、
usernameとpasswordを入力するためのソフトウェアキーボードが表示されるようにすることです。
ソフトキーボードを表示するためにonShow()を作ったのですが、create()に、can not resolve alertDialogBuilderと出ます。
もともとは、 AlertDialog.Builder builder = new AlertDialog.Builder(this);を使っていたのですが、onShow()は、alertDialogBuilderをcreate()する方法でしか使えないと見たのですが、どうすれば、alertDialogBuilderをcreate()ができるでしょうか
java
1//ソフトキーボードを表示するためのShow()です。 2 AlertDialog alertDialog = alertDialogBuilder.create(); 3 alertDialog.setOnShowListener(new DialogInterface.OnShowListener() { 4 @Override 5 public void onShow(DialogInterface arg0) { 6 EditText getusername2 = (EditText) layout.findViewById(R.id.username); 7 InputMethodManager inputMethodManager = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE); 8 inputMethodManager.showSoftInput(getusername2, 0); 9 } 10 });
できれば、alertDialogBuilder.create();を使わずに、 AlertDialog.Builder builder = new AlertDialog.Builder(this);を使ってコードを書きたいのですが、onShow()を使わないとソフトキーボードを表示することはできないのでしょうか?
下のコードは、ソフトキーボードを表示するためのコードです。3つの方法を試しましたが、表示できませんでした。
java
1 AlertDialog.Builder builder = new AlertDialog.Builder(this); 2 builder.setView(layout); 3 EditText getusername2 = (EditText) layout.findViewById(R.id.username); 4 5 6 //一つ目の方法 7 InputMethodManager inputMethodManager = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 8 inputMethodManager.showSoftInput(getusername2, 0); 9 10 //2つ目の方法 11 inputMethodManager.toggleSoftInput(1, InputMethodManager.SHOW_IMPLICIT); 12 13 //3つ目 14 getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/05/16 16:28
2017/05/16 16:44
2017/05/16 16:55
2017/05/16 18:49
2017/05/16 18:54 編集