android系统PDA扫描枪,扫描完成后自带回车,为啥回车监听第一次不起作用,手动提交一次后才能正常提交

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了android系统PDA扫描枪,扫描完成后自带回车,为啥回车监听第一次不起作用,手动提交一次后才能正常提交相关的知识,希望对你有一定的参考价值。

如题,第一次扫描后,在条码后出现的是回车,而不是绑定的提交按钮的提交功能,手动软键盘提交后,再回到扫描页,再次扫描,就会自动执行提交功能。下面附上源码:

private ImageButton scan_btnsubmit;
private EditText scan_et;
Intent intent = getIntent();

@Override
protected void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.scan);
scan_btnsubmit = (ImageButton) findViewById(R.id.Scan_Button_login);
scan_et = (EditText) findViewById(R.id.Scan_login);
scan_btnsubmit.setOnClickListener(this);
scan_et.setOnKeyListener(onKey1);


OnKeyListener onKey1 = new OnKeyListener()

@Override
public boolean onKey(View v, int keyCode, KeyEvent event)
// keyCode == KeyEvent.KEYCODE_ENTER && event.getAction()
// ==KeyEvent.ACTION_UP
if (keyCode == 66 && event.getAction() == KeyEvent.ACTION_UP)
System.out.println("扫描完成,调用点击提交按钮");

scan_btnsubmit.performClick();
return true;

return false;


;

@Override
public void onClick(View v)
// TODO Auto-generated method stub
switch (v.getId())
case R.id.Scan_Button_login:
System.out.println("点击了一次提交按钮");
// 处理提交事件
if (scan_et.getText().toString() == null
|| scan_et.getText().toString().replaceAll("\\s|\n",

"").equals(""))
Toast.makeText(ScanActivity.this, "条码为空,请扫描或手动输入条码!",

Toast.LENGTH_LONG).show();
else
System.out.println("跳转页面");
scan_et.setText("");
Intent i = new Intent();
i.setClass(ScanActivity.this, MainManuActivity.class);
startActivity(i);

break;

可以这样说,第一次扫描,没有自动点击ImageButton,手动提交后,再次来扫描,就自动绑定了ImageButton的点击事件。而且第一次要是点击ImageButton进行提交,再次回来扫描的话,还是提交不上,求高手来解答啦,
软键盘使用的是搜狗,PDA上自带数字键与回车、Tab键,接打电话等键,我怀疑是不是扫描的时候软键盘没有启动的问题。。但我不确定
已测试:用系统自带的ASOP键盘不会出现上述错误,但是我想用搜狗,因为我会在后面的Activity中输入中文,而且用户体验很好,请问有什么办法吗

首先,有些扫描枪可以设置加回车或者换行,两者不一样的,可以分别试试。

然后,获得焦点的输入框接收扫描结果后可以监听setOnEditorActionListener,网上很多参考,多测试。

最后,点击提交之后的事件可以封装成一个方法,在输入框监听回车之后直接引用这个方法即可,不需要再触发按钮事件。
参考技术A 这玩意首先你用的是哪个品牌哪个型号的pda,可以找厂家或者你供应商帮忙.他们搞不定就换另外一个品牌或型号 参考技术B 一楼的正解,有时间在这发消息,直接找厂家多直接!

pda扫描太快如何改

参考技术A 修改方法是
打印机的扫描速度可以在电脑里面通过对打印机的设置进行速度调整
1、将电源打开,如果之前开着的,则关掉后重新打开。
2、按住“暂停”键3秒钟,暂停键的灯开始闪烁。
3、按住“字体”键,开始调整打印速度。每按一次,则打印机面板左上角的3个灯会不同地闪烁。说明:3种灯不同闪烁,代表的意思见面板指示。
4、一直按至3个灯的状态分别为“灭灭亮”(即宋体高速),或”灭亮亮“(黑体高速),即选择了高速状态

以上是关于android系统PDA扫描枪,扫描完成后自带回车,为啥回车监听第一次不起作用,手动提交一次后才能正常提交的主要内容,如果未能解决你的问题,请参考以下文章

pda扫描怎么设置自动确认

PDA扫描设置

PDA打印扫描出入库开单系统介绍

nui监听安卓PDA扫描事件

东集pdaQ7 怎么扫描

pda扫描太快如何改