问题描述
我有一个带有嵌入式条形码扫描仪的 Android 设备。
在设备上按下“扫描”按钮时,它会扫描条形码,并且只有当光标位于 EditText 上时,数据才会显示在 EditText 中。 即选择了 EditText。
我希望在没有选择 EditText 的情况下获得扫描结果。
我已经用 onActivityResult 试过了
@Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); }
但我没有得到任何结果。 我能做什么 ?
我不想按按钮来激活扫描仪。
1楼
使用,您可以将扫描仪作为意图启动并解析结果。
import com.google.zxing.integration.android.IntentIntegrator;
import com.google.zxing.integration.android.IntentResult;
public void onActivityResult(int requestCode, int resultCode, Intent intent){
IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, intent);
Context context = getApplicationContext();
if (scanResult != null){
String scanContent = scanResult.getContents();
Toast toast = Toast.makeText(context, scanContent, 5000);
toast.show();
}
else {
Toast toast = Toast.makeText(context, "Error", 5000);
toast.show();
}
};
此意图通过方法之一启动,例如onCreate()
覆盖。
IntentIntegrator scanIntegrator = new IntentIntegrator(this);
scanIntegrator.initiateScan();