二维码扫描的一些代码

// 扫描、生成二维码

// 扫描按钮布局文件

	
	
		
	...
	


// 开启扫描类文件

public class SaoMa{
	
	@OnClick({R.id.imgv_saoma})
	public void btnClick(View view){
		switch(view.getId()){
			case R.id.imgv_saoma:
			if(PermissionsUtil.is6){// 如果安卓系统大于6
			// 开启相机
				PermissionsUtil.checkPermissionBy6(this, Mainfest.permission.CAMERA);
			} else if(PermissionsUtil.checkPermission(Mainfest.permission.CAMERA)){
				// 如果6.0以下授权了
				startActivity(MineScanAty.class, null);
			} else {
				showToast("未开启相机权限");
			}
		}
	}
}

// 扫描二维码布局文件,比较简单就两个


	
	
		
	

// 扫码的逻辑
public class MineScanAty extends BaseAty implements QRCCodeView.Delegate{
	
	@Bind(R.id.zxingview)
	QRCodeView mQRCodeView;
	
	@Bind(R.id.iv_finish)
	ImagiveView mIvFinish;
	
	@Override
	public int getLayoutId(){
		return R.layout.scan_code_layout;
	}
	
	@Override
	public void initData(){
		mQRCodeView.setResultHandler(this);
		mIvFinish.setOnClickListener(new View.OnClickListener(){
			@Override
			public void onClick(View v){
				finish();
			}
		});
	}
	
	@Override
	protected void onStart(){
		super.onStart();
		// 显示扫描框,并延迟1.5秒后开始识别
		mQRCodeView.startSpotAndShowRect();
	}
	
	@Override
	protected void onStop(){
		mQRCodeView.stopCamera();
		super.onStop();		
	}
	
	// 假如扫描成功了
	@Override
	public void onScanQRCodeSuccess(String result){
		Log.i("result","result="+result);
		// 收摊子
		mQRCodeView.stopSpotAndHiddenRect();
		showLoadingDialog(null);
		// 上传扫到的结果
		doHttp(RetrofitUtils.createApi(ModileApi.class).scan(UserManager.getUserId(), result), 1);
		finish();
	}
	
	// 上传解析成功
	@Override
	public void onSuccess(String result, Call call, Response response, int what){
		showToast("成功!");
		finish();
		super.onSuccess(result, call, response, what);
	}
} 


你可能感兴趣的:(功能类--武器库)