很多文章都说 码枪其实相当于一个物理输入设备 ,获取呢,其实代码并不多,下面来实现下效果

,这里已经用在了项目 效果还非常不错,

方法 1 

public class MainActivity extends AppCompatActivity {    private EditText edt;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        edt = findViewById(R.id.edt);        edt.setOnEditorActionListener(new TextView.OnEditorActionListener() {            @Override            public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {                if (event.getAction() == KeyEvent.ACTION_UP) {                    String str = v.getText().toString().trim();                    edt.setText(str);                }                return true;            }        });}}

方法二 如果没事EditText 这个时候可以使用 dispatchKeyEvent 来实现效果了

带入如下

public class NoEditActiviy extends AppCompatActivity {    private TextView txt;    @Override    protected void onCreate(@Nullable Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.no_edit_activity_layout);        txt = findViewById(R.id.txt);    }    String barcode ="";    @Override    public boolean dispatchKeyEvent(KeyEvent event) {        if(event.getAction()== KeyEvent.ACTION_DOWN){            char pressedKey = (char) event.getUnicodeChar();            barcode += pressedKey;        }        if (event.getAction()==KeyEvent.ACTION_DOWN && event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {            txt.setText(barcode);            barcode="";        }        return super.dispatchKeyEvent(event);    }}

这个扫码枪不持支中文,

demo 地址,希望能更好的帮助到您

更多相关文章

  1. 没有一行代码,「2020 新冠肺炎记忆」这个项目却登上了 GitHub 中
  2. 淘宝(阿里百川)手机客户端开发日记第一篇 android 主框架搭建(二
  3. android中view事件传递
  4. android HorizontalScrollView实现滚动状态监听
  5. android 开发 View _1_ View的子类们 和 视图坐标系图
  6. android 左右滑动+索引图标实现方法与代码
  7. Android: Keyguard分析之一:开机流程篇
  8. Android(安卓)5.0动画(一)
  9. Android发送邮件的方法实例详解

随机推荐

  1. 详解mysql不等于null和等于null的写法
  2. Mysql NULL导致的神坑
  3. MySQL之select in 子查询优化的实现
  4. 简单了解mysql存储字段类型查询效率
  5. MySQL5.x版本乱码问题解决方案
  6. Django连接本地mysql数据库(pycharm)的步
  7. 通过实例判断mysql update是否会锁表
  8. 基于mysql实现group by取各分组最新一条
  9. MySQL变量原理及应用实例
  10. 防止MySQL重复插入数据的三种方法