Android之在Fragment中使用二维码扫描功能

版权声明:转载请注明本文链接 https://blog.csdn.net/qq_31844349/article/details/81347413

最近在做一个项目,是在Fragment中使用zxing的二维码扫描功能,在我以前写的二维码扫描功能的教程只适合在activity中使用地址:https://blog.csdn.net/qq_31844349/article/details/81301911

没有办法因为工作需要,必须在Fragment中使用二维码扫描功能,查找资料,最后在一个大神的博客中找到了如何在Fragment中使用二维码扫描功能,

这是需要导入Embedded:

compile 'com.google.zxing:core:3.3.0'
compile 'com.journeyapps:zxing-android-embedded:3.5.0'

扫描二维码代码:

new IntentIntegrator(getActivity())
                        // 扫码的类型,条形码或者二维码
                        .setDesiredBarcodeFormats(IntentIntegrator.QR_CODE_TYPES)
                        //这个参数可以设置也可以不设置,设置后使用自定义的二维码扫描框,不设置使用默认的
                        .setCaptureActivity(CapEr.class)
                        // 设置提示语
                        .setPrompt("将二维码放到框内")
                        //设置使用那个摄像头
                        .setCameraId(0)
                        //是否在扫描完成后有提示音
                        .setBeepEnabled(true)
                        //扫完码之后生成二维码的图片
                        .setBarcodeImageEnabled(true)
                        //初始化扫描
                        .initiateScan();

扫描完成后的结果也是和上次教程一样在onActivityResult中回调

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    IntentResult result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data);
    //处理结果
}

猜你喜欢

转载自blog.csdn.net/qq_31844349/article/details/81347413