1、在module app中的build.gradle中加入依赖
compile 'com.journeyapps:zxing-android-embedded:3.5.0'
2、设置属性
在点击事件中初始化
IntentIntegrator integrator = new IntentIntegrator(getActivity());
integrator = integrator.forSupportFragment(fragment);(千万注意这个如果你是用fragment就一定要加这行代码 否则忽略)
integrator.setDesiredBarcodeFormats(IntentIntegrator.QR_CODE_TYPES);integrator.setCaptureActivity(ScanActivity.class);//如果不需要竖屏显示 ,忽略这个integrator.setPrompt(""); //底部的提示文字,设为""可以置空integrator.initiateScan();
3.如果想要竖屏显示需要新建一个空的Activity继承
CaptureActivity(注意一定要删除onCreate方法,不然会没效果,至于为什么我就不做解释了)
在当前Activity的清单文件中加入竖屏属性(不懂 自行百度)
4.添加权限
<uses-permission android:name="android.permission.CAMERA" />
5、对结果的处理
@Override public void onActivityResult(int requestCode, int resultCode, Intent data) { IntentResult scanResult = IntentIntegrator.parseActivityResult(requestCode, resultCode, data); if (scanResult != null) { String result = scanResult.getContents(); Log.e("HYN", result); Toast.makeText(getActivity(), result, Toast.LENGTH_LONG).show(); } // String result = data.getExtras().getString(); }