• android 使EditText始终不弹出软键盘,并且有光标


    今天做一个功能,PDA扫描条码内容显示到文本框,但点击EditText时老是弹出软键盘,挡住了一些信息,体验很不好,网上找了很久终于找到最佳效果,参考https://blog.csdn.net/suowolegeca/article/details/49128939

    很多说直接设置et_emulator_qrcord.setInputType(InputType.TYPE_NULL); 确实不弹出软键盘,但是不显示光标,最重要是扫描条码也取不到数据,最终使用以下方法完美解决。

     // 获取文本框
      et_emulator_qrcord = (EditText) findViewById(R.id.et_emulator_qrcord);
      //禁止弹出软键盘,并且有光标
      if (android.os.Build.VERSION.SDK_INT <= 10) {
          et_emulator_qrcord.setInputType(InputType.TYPE_NULL);
       } else {
          getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
          try {
          //采用反射的方式,调用系统内部方法
             Class<EditText> cls = EditText.class;
             Method setSoftInputShownOnFocus;
             setSoftInputShownOnFocus = cls.getMethod("setShowSoftInputOnFocus", boolean.class);
             setSoftInputShownOnFocus.setAccessible(true);
             setSoftInputShownOnFocus.invoke(et_emulator_qrcord, false);
           } catch (Exception e) {
             e.printStackTrace();
           }
       }
  • 相关阅读:
    django1.8升级1.9的几个问题
    App免费推广途径概要
    Django Channels 入门指南
    小谈业务应用架构
    比技术债更可怕的人债
    js数据结构与算法--递归
    常见react面试题汇总
    如何使用koa实现socket.io官网的例子
    Vue插槽
    10分钟了解 react 引入的 Hooks
  • 原文地址:https://www.cnblogs.com/Mrshuang11/p/13949783.html
Copyright © 2020-2023  润新知