2

在我的应用程序中,我使用 zxing 作为库,当我​​扫描 QR 码时,它默认显示一个带有 QR 数据的屏幕。

而不是这个,我想根据扫描的二维码去另一个活动。

有人可以帮我吗?

这是我的活动中的代码:

public void onActivityResult(int requestCode, int resultCode, Intent intent) 
{
    //super.onActivityResult(requestCode, resultCode, intent);
    if (requestCode == 0) {
        if (resultCode == RESULT_OK) {
            String contenido = intent.getStringExtra("SCAN_RESULT");
            String formato = intent.getStringExtra("SCAN_RESULT_FORMAT");

            Intent i = new Intent(Qr_Reader.this,AnotherAcitvity.class);
            startActivity(i);

        } else if (resultCode == RESULT_CANCELED) {

        }
    }
}
4

1 回答 1

1

从 zxing 条码结果中尝试以下代码:

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        switch (requestCode) {
            case IntentIntegrator.REQUEST_CODE:
                IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode,
                        resultCode, data);
                if (scanResult == null) {
                    return;
                }
                final String result = scanResult.getContents();
                final String result1 = scanResult.getFormatName();
                if (result != null) {
                    handler.post(new Runnable() {
                        @Override
                        public void run() {
                            txtScanResult.setText(result);
                            txtScanResultFormat.setText(result1);

                             Intent i = new Intent(Qr_Reader.this,AnotherAcitvity.class);
                             startActivity(i);
                        }
                    });
                }
                break;
            default:
        }
    }

编辑:

如果您不想使用 IntetIntegrator,请尝试此代码。

我没有尝试过这种方式,但我找到了一些可能对你有帮助的链接。

链接1

链接2

希望它会帮助你。

于 2013-06-14T12:58:41.713 回答