android AlertDialog中EditText无法显示软键盘问题的解决方案


有2中解决方案吧
第一种: 把alertdialog换成dialog就行,dialog中的样式本身带的有,可以直接弹出键盘。

Dialog dialog_passowrd = new Dialog(this,R.style.dialog);
dialog_passowrd.setContentView(comfimPassword, new LinearLayout.LayoutParams(-2,-2));
dialog_passowrd.setCanceledOnTouchOutside(false);
dialog_passowrd.show()

第二种:加一个Timer 这个试过了,可行。 但缺点是:不支持3.0的,其他的都行
                AlertDialog.Builder builde = new AlertDialog.Builder(this);
                dialog_passowrd = builde.setView(comfimPassword).create();
                dialog_passowrd.setView(comfimPassword, 0, 0, 0, 0);
                dialog_passowrd.setCanceledOnTouchOutside(false);
                dialog_passowrd.show();

                 Timer timer = new Timer();
                   timer.schedule(new TimerTask() {

                    @Override
                    public void run() {
                     ((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE))
                       .toggleSoftInput(0,
                         InputMethodManager.HIDE_NOT_ALWAYS);
                    }
                   }, 100);

你可能感兴趣的:(android,timer,service,input,dialog)