gpt4 book ai didi

android-如何防止输入键/点击来自条形码扫描仪

转载 作者:行者123 更新时间:2023-11-30 00:31:34 26 4
gpt4 key购买 nike

您好,我有一个应用程序,我通过条形码扫描器获取条目。我使用 Zebra TC56 作为测试设备。

我需要向用户显示一条警告消息,这就是为什么我有一个自定义对话框。当用户遇到错误时显示对话框。我的对话框图片可以在这里看到:enter image description here

下面红色部分是一个按钮,点击按钮后,对话框会关闭,用户会转到最新的画面。

一切正常,但有些东西我不想要。当用户扫描条形码(输入数据)按钮时,将触发并关闭对话框。

我只想通过单击屏幕上的按钮 (TAMAM) 来关闭对话框。但是当我扫描任何东西时,对话框都关闭了。

这是对话框类的代码:

public class ViewDialog {
public void showDialog(Activity activity, String msg){
final Dialog dialog = new Dialog(activity);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setCancelable(false);
dialog.setContentView(R.layout.customdialog);

TextView text = (TextView) dialog.findViewById(R.id.text_dialog);
text.setText(msg);

Button dialogButton = (Button) dialog.findViewById(R.id.btn_dialog);
dialogButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});

dialog.show();

}

我试图将注意力集中在按钮 (TAMAM) 以外的某个地方,但没有帮助。如果有人知道如何从条形码扫描器中关闭回车键,我真的需要一些帮助,我将不胜感激。 (我已经设置设备发送回车键,因为我需要在其他屏幕)

最佳答案

我能想到的几种方法。

首先,我假设您正在使用 DataWedge 自动将回车键附加到扫描的数据,您可以使用 SWITCH_PROFILE API 动态切换到未发送回车键但在所有其他方面都相同的配置文件:http://techdocs.zebra.com/datawedge/6-3/guide/api/switchtoprofile/ .这是假设您仍然需要能够在对话框可见时进行扫描,如果您希望完全禁用扫描,您可以使用 SCANNER_INPUT_PLUGIN API:http://techdocs.zebra.com/datawedge/6-3/guide/api/scannerinputplugin/ .

其次,您可以使用 EMDK 配置文件 API 更改 KeyStroke 输出插件 (http://techdocs.zebra.com/emdk-for-android/6-3/mx/data-capture/keystroke/#keystrokeoutput) 的参数,然后应用新修改的配置文件。我自己从未尝试过,但它应该有效——查看以下示例以了解其背后的原理:http://techdocs.zebra.com/emdk-for-android/6-3/samples/data-capture/

第三,您可以将 Java SDK 用于扫描器,这使您可以更好地控制扫描器的行为方式 (http://techdocs.zebra.com/emdk-for-android/6-3/api/)

关于android-如何防止输入键/点击来自条形码扫描仪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44242186/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com