Codenameone 在codename one中自定义QRScanner相机视图

Codenameone 在codename one中自定义QRScanner相机视图,codenameone,Codenameone,我正在使用QRScanner cn1lib,它工作正常。我想定制并在相机上画一个正方形,用来扫描二维码。我不知道该怎么办 public void scanQRCode() { final android.app.Activity ctx = com.codename1.impl.android.AndroidNativeUtil.getActivity(); Intent intent = new Intent(ctx, ZBarScannerActivity.class

我正在使用QRScanner cn1lib,它工作正常。我想定制并在相机上画一个正方形,用来扫描二维码。我不知道该怎么办

    public void scanQRCode() {
    final android.app.Activity ctx = com.codename1.impl.android.AndroidNativeUtil.getActivity();
    Intent intent = new Intent(ctx, ZBarScannerActivity.class);
    intent.putExtra(ZBarConstants.SCAN_MODES, new int[]{Symbol.QRCODE});

    com.codename1.impl.android.AndroidNativeUtil.startActivityForResult(intent, new IntentResultListener() {
        public void onActivityResult(int requestCode, int resultCode, Intent data) {
            if (resultCode == Activity.RESULT_OK) {
                QRScanner.getCallback().scanCompleted(data.getStringExtra(ZBarConstants.SCAN_RESULT), "QRCODE", data.getStringExtra(ZBarConstants.SCAN_RESULT).getBytes());
            } else if (resultCode == Activity.RESULT_CANCELED) {
                if (data != null) {
                    String error = data.getStringExtra(ZBarConstants.ERROR_INFO);
                    if (!TextUtils.isEmpty(error)) {
                        QRScanner.getCallback().scanError(100, error);
                    } else {
                        QRScanner.getCallback().scanCanceled();
                    }
                } else {
                    QRScanner.getCallback().scanCanceled();
                }
            }
        }
    });
}

这是我从源代码获得的本机实现。请指导我在相机屏幕上创建正方形。我对安卓知之甚少,所以请详细说明。如果您有任何参考资料,我们将不胜感激。

为此,您必须构建一个自定义的摄像头应用程序。然后,您将能够在相机视频提要的顶部进行绘制。您可以使用本机代码在相机上绘制正方形,而不是使用代码名One代码。你需要修改cn1lib的源代码。我知道我必须修改cn1lib的源代码,但我不知道怎么做。我读过关于修改相机预览的文章,但大多数都使用xml进行布局。我应该把我的xml放在哪里,这样它就可以被android接收到?xml布局总是可以在android中手工编码,我不是一个android的家伙,所以在某种程度上这更像是一个android问题。Android布局XML中的每个XML元素都有一个要匹配的Java类。