android AlertDialog中的Edittext自动获取焦点并弹出软键盘

转自 http://www.cuiweiyou.com/671.html

private void confirmPhoneGurdPswd(final String guardPswd) {

        // 1.创建弹出式对话框  
        final AlertDialog.Builder alertDialog = new android.app.AlertDialog.Builder(HomeActivity.this); // 系统默认Dialog没有输入框  

        // 获取自定义的布局  
        View alertDialogView = View.inflate(HomeActivity.this, R.layout.自定义布局, null);

        // 2.密码框-EditText。alertDialogView.findViewById(R.id.自定义布局中的文本框)  
        final EditText et_dialog_confirmphoneguardpswd = (EditText) alertDialogView.findViewById(R.id.et_dialog_confirmphoneguardpswd);

        // 确认按钮,确认验证密码  
        Button btn_dialog_resolve_confirmphoneguardpswd = (Button) alertDialogView.findViewById(R.id.btn_dialog_resolve_confirmphoneguardpswd);
        btn_dialog_resolve_confirmphoneguardpswd.setOnClickListener(new OnClickListener() {
            // 点击按钮处理  
            public void onClick(View v) {
                // 提取文本框中输入的文本密码  
            }
        });
        // 取消按钮,不验证密码  
        Button btn_dialog_cancel_confirmphoneguardpswd = (Button) alertDialogView.findViewById(R.id.btn_dialog_cancel_confirmphoneguardpswd);
        btn_dialog_cancel_confirmphoneguardpswd.setOnClickListener(new OnClickListener() {
            // 点击按钮处理  
            public void onClick(View v) {
                //  
            }
        });

        AlertDialog tempDialog = alertDialog.create();
        tempDialog.setView(alertDialogView, 0, 0, 0, 0);

        /** 3.自动弹出软键盘 **/
        tempDialog.setOnShowListener(new OnShowListener() {
            public void onShow(DialogInterface dialog) {
                InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
                imm.showSoftInput(et_dialog_confirmphoneguardpswd, InputMethodManager.SHOW_IMPLICIT);
            }
        });

        tempDialog.show();
    }


阅读更多

没有更多推荐了,返回首页