条码扫描二维码扫描—ZXing android 改进版本

1、增加了将代码嵌套入自己工程后传值的办法(初学,如果有更好的方法也希望告诉我,先谢谢了)

2、扫码界面进行了处理(初步实现了现有某些软件的样子,至于长的像谁就不说了)

//画四个角的代码
paint.setColor(frameColor);
canvas.drawRect( 15  + frame.left, 15  + frame.top, 15  + (linewidht + frame.left), 15  + ( 50  + frame.top), paint);
canvas.drawRect( 15  + frame.left, 15  + frame.top, 15  + ( 50  + frame.left), 15  + (linewidht + frame.top), paint);
canvas.drawRect(- 15  + (( 0  - linewidht) + frame.right), 15  + frame.top, - 15  + ( 1  + frame.right), 15  + ( 50  + frame.top), paint);
canvas.drawRect(- 15  + (- 50  + frame.right), 15  + frame.top, - 15 +frame.right, 15  + (linewidht + frame.top), paint);
canvas.drawRect( 15  + frame.left, - 15  + (- 49  + frame.bottom), 15  + (linewidht + frame.left), - 15  + ( 1 + frame.bottom),    paint);
canvas.drawRect( 15  + frame.left, - 15 + (( 0  - linewidht) + frame.bottom), 15  + ( 50  + frame.left), - 15 + ( 1  + frame.bottom), paint);
canvas.drawRect(- 15  + (( 0  - linewidht) + frame.right), - 15 + (- 49  + frame.bottom), - 15  + ( 1  + frame.right), - 15 + ( 1  + frame.bottom), paint);
canvas.drawRect(- 15  + (- 50  + frame.right), - 15 + (( 0  - linewidht) + frame.bottom), - 15  + frame.right, - 15 + (linewidht - (linewidht - 1 ) + frame.bottom), paint);

  

 

linewidht变量控制四个角的宽度,下图显示的是设置为2时的效果

将ViewfinderView类中代码中vmiddle hmiddle 变量定义下的这两句替换可以变为小十字坐标

canvas.drawRect(hmiddle - 20 , vmiddle - 1 , hmiddle + 20 ,vmiddle + 2 , paint);
canvas.drawRect(hmiddle - 1 , vmiddle - 20 , hmiddle + 2 ,vmiddle + 20 , paint);

  

在测试中发现原有代码无法打开闪光灯,实际使用中发现开启闪光灯有点鸡肋,那也要实现,呵呵
注意:下面的代码在下载包内没有更新,请自行替换
在CameraManager类openDriver方法下增加如下代码,其中is_flashlight是布尔值变量(用于提取设置中是否开启闪光灯)
configManager.setDesiredCameraParameters(camera);
   parameters = camera.getParameters();
   if (is_flashlight) {
    flashMode=Camera.Parameters.FLASH_MODE_ON;
   } else {
    flashMode=Camera.Parameters.FLASH_MODE_OFF;
   }
   if (flashMode != null) {
    parameters.setFlashMode(flashMode);
    camera.setParameters(parameters);
   }
改写closeDriver方法
public void closeDriver() {
  if (camera != null) {
   parameters.setFlashMode(Parameters.FLASH_MODE_OFF);
   camera.setParameters(parameters);
   // FlashlightManager.disableFlashlight();
   camera.release();
   camera = null;
  }
}

代码下载地址:http://www.eoeandroid.com/forum.php?mod=viewthread&tid=225832&page=1&extra=#pid1997182

再贴一些经典的扫描界面

条码扫描二维码扫描—ZXing android 改进版本_第1张图片条码扫描二维码扫描—ZXing android 改进版本_第2张图片条码扫描二维码扫描—ZXing android 改进版本_第3张图片条码扫描二维码扫描—ZXing android 改进版本_第4张图片条码扫描二维码扫描—ZXing android 改进版本_第5张图片

你可能感兴趣的:(android小知识点,二维码,android开发,zxing)