LayoutInflater inflater = LayoutInflater                .from(CashCaptureActivity.this);        LinearLayout layout = (LinearLayout) inflater.inflate(                R.layout.vip_mode_layout, null);        final EditText addStockNumEt = (EditText) layout                .findViewById(R.id.edit_text);        Button firmBtn = (Button) layout                .findViewById(R.id.btn_dialog_firm);        Button cancleBtn = (Button) layout                .findViewById(R.id.btn_dialog_give_up);        mVipModeDialog = new AlertDialog.Builder(                CashCaptureActivity.this).create();        mWaringTv = (TextView) layout.findViewById(R.id.waring_tips);        mWaringTv.setVisibility(View.INVISIBLE);        mVipModeDialog.setView(layout);        mVipModeDialog.setCancelable(true);        firmBtn.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                String code = addStockNumEt.getText().toString();                if (StringUtils.isEmpty(code)) {                    mWaringTv.setVisibility(View.VISIBLE);                    return;                }                if (mMemberDetailPresenter == null) {                    mMemberDetailPresenter = new MemberDetailPresenter(CashCaptureActivity.this, CashCaptureActivity.this, getPackageName());                    mMemberDetailPresenter.loadByCode(code, true);                } else {                    mMemberDetailPresenter.loadByCode(code, true);                }            }        });        cancleBtn.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                AppApplication.getInstance().setInputMethodManager(false, addStockNumEt);                mVipModeDialog.dismiss();            }        });        mVipModeDialog.setOnShowListener(new DialogInterface.OnShowListener() {  //当dialog弹出时调出输入键盘  但当编辑框没完全显示时不能保证弹出输入键盘            @Override            public void onShow(DialogInterface dialog) {                runOnUiThread(new Runnable() {                    @Override                    public void run() {                        AppApplication.getInstance().setInputMethodManager(true, addStockNumEt);//弹出输入法键盘                    }                });            }        });        addStockNumEt.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() { //当发现编辑框完全画完显示时调用            @Override            public void onGlobalLayout() {//该段代码中去监听edittext是否被绘制完毕,如果绘制完毕则调用onGlobalLayoutListener.onGlobalLayout函数,在该函数中去显示键盘,运行下                AppApplication.getInstance().setInputMethodManager(true, addStockNumEt); //弹出输入法键盘            }        });        mVipModeDialog.show();


弹输入键盘:

    /**     * 打开输入法     *     * @param isOpenInput     */    public void setInputMethodManager(boolean isOpenInput, EditText editText) {        InputMethodManager imm = (InputMethodManager) this.getSystemService(Context.INPUT_METHOD_SERVICE);        if (isOpenInput) {            imm.showSoftInput(editText, InputMethodManager.SHOW_FORCED);//强制显示        } else {            imm.hideSoftInputFromWindow(editText.getWindowToken(), 0); //强制隐藏键盘        }    }


效果显示:

android dialog 显示时弹出输入法_第1张图片

更多相关文章

  1. android 键盘不弹出
  2. Android 打开和关闭软键盘
  3. android中隐藏以及显示软键盘代码
  4. android朋友圈监听键盘状态 点击空白区域隐藏键盘
  5. Android监听键盘上的确定键等
  6. Solution of issue: Android soft keyboard overlap with input
  7. Android 如何在自定义界面上启用输入法 (How to enable inputmet
  8. Android输入法框架系统(上)

随机推荐

  1. Java Agent 动态修改字节码详情
  2. PyTorch一小时掌握之基本操作篇
  3. 婚恋网站相关控制器和路由
  4. 完成婚恋网项目后台页面
  5. Grand View Research:2028年云计算市场将
  6. 意派Epub360|2021中秋H5互动案例大比拼
  7. 意派Epub360丨中秋H5营销案例+模板大比拼
  8. 第2章 常用的HTML5标签-PHP培训九期线上
  9. 想购一套生鲜配送管理系统,蔬果云和悦厚哪
  10. 拼团小程序功能及商家怎样通过拼团盈利