Android二维码的生成与扫码-zxing示例代码

 更新时间:2017年03月10日 08:25:59   作者:BOBO_FAS  
本篇文章主要介绍了Android二维码的生成与扫码-zxing示例代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。

由于GitHub上面的zxing功能太多,有的用不到,我就抽取了重要的出来使用,这个可以生成二维码,扫描二维码和相册中的二维码

Demo效果:

1.在project的build.gradle添加如下代码:

allprojects {
  repositories {
    maven { 
      url 'https://jitpack.io'
     }
  }
}

2.在build.gradle添加依赖:

dependencies {
  compile 'com.github.goodboy321:Scan-Zxing:1.0'
}

布局:

<EditText
  android:id="@+id/et"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:hint="输入内容,生成二维码"
  android:text="http://www.baidu.com" />

<Button
  android:background="@color/colorAccent"
  android:id="@+id/btn2"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:text="生成二维码" />

<Button
  android:layout_marginTop="10dp"
  android:background="@color/colorPrimaryDark"
  android:id="@+id/btn1"
  android:layout_width="match_parent"
  android:layout_height="wrap_content"
  android:text="扫码(识别相册中二维码)" />

<ImageView
  android:id="@+id/image"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_gravity="center_horizontal" />

<ImageView
  android:id="@+id/image_callback"
  android:layout_marginTop="10dp"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:layout_gravity="center_horizontal" />

主方法:

public void onClick(View view) {
  switch (view.getId()) {
    case R.id.btn1:
      Intent intent = new Intent(mContext, CaptureActivity.class);
      startActivityForResult(intent, REQUEST);
      break;
    case R.id.btn2:
      image.setVisibility(View.VISIBLE);
      //隐藏扫码结果view
      imageCallback.setVisibility(View.GONE);

      String content = et.getText().toString().trim();
      Bitmap bitmap = null;
      try {
        bitmap = BitmapUtils.create2DCode(content);//根据内容生成二维码
        tvResult.setVisibility(View.GONE);
        image.setImageBitmap(bitmap);
      } catch (Exception e) {
        e.printStackTrace();
      }
      break;
   }
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
  super.onActivityResult(requestCode, resultCode, data);
  if (requestCode == REQUEST) {
    image.setVisibility(View.GONE);
    imageCallback.setVisibility(View.VISIBLE);

    String result = data.getStringExtra(CaptureActivity.SCAN_QRCODE_RESULT);
    Bitmap bitmap = data.getParcelableExtra(CaptureActivity.SCAN_QRCODE_BITMAP);

    if(bitmap != null){
      imageCallback.setImageBitmap(bitmap);//现实扫码图片
    }
  }

具体需求可修改源码

Demo源码下载:Zxing_jb51.net.rar

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Android实现伸缩弹力分布菜单效果的示例

    Android实现伸缩弹力分布菜单效果的示例

    本文介绍下在Android中实现伸缩弹力分布菜单效果。这种效果比较炫酷,有需要的朋友可以参考一下。
    2016-10-10
  • Kotlin使用flow实现倒计时功能(示例详解)

    Kotlin使用flow实现倒计时功能(示例详解)

    这篇文章主要介绍了Kotlin使用flow实现倒计时功能,本文通过图文实例相结合给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧
    2024-02-02
  • Android编程之Button控件用法实例分析

    Android编程之Button控件用法实例分析

    这篇文章主要介绍了Android编程之Button控件用法,较为详细的分析了Button控件的功能、定义及相关使用注意事项,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-10-10
  • 关于Android 6.0权限的动态适配详解

    关于Android 6.0权限的动态适配详解

    Android 6.0版本(Api 23)推出了很多新的特性, 大幅提升了用户体验, 同时也为程序员带来新的负担. 动态权限管理就是这样, 一方面让用户更加容易的控制自己的隐私, 一方面需要重新适配应用权限,本文介绍了关于Android 6.0权限动态适配的相关资料,需要的朋友可以参考下。
    2017-11-11
  • Android性能优化死锁监控知识点详解

    Android性能优化死锁监控知识点详解

    这篇文章主要为大家介绍了Android性能优化死锁监控知识点详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • Android编程实现播放音频的方法示例

    Android编程实现播放音频的方法示例

    这篇文章主要介绍了Android编程实现播放音频的方法,结合实例形式分析了Android使用MediaPlayer类播放音频的相关操作技巧,需要的朋友可以参考下
    2017-08-08
  • Flutter文本Text和输入框TextField组件使用示例

    Flutter文本Text和输入框TextField组件使用示例

    这篇文章主要为大家介绍了Flutter文本Text和输入文本框TextField组件使用示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-08-08
  • Android实现带有边框的ListView和item的方法

    Android实现带有边框的ListView和item的方法

    这篇文章主要介绍了Android实现带有边框的ListView和item的方法,结合实例形式分析了ListView和item四周添加边框的实现步骤与相关技巧,需要的朋友可以参考下
    2016-07-07
  • Android开发自学笔记(一):Hello,world!

    Android开发自学笔记(一):Hello,world!

    这篇文章主要介绍了Android开发自学笔记(一):Hello,world!本文讲解了创建HelloWorld工程、编写代码、启动模拟器等步骤,需要的朋友可以参考下
    2015-04-04
  • Android Retrofit文件下载进度显示问题的解决方法

    Android Retrofit文件下载进度显示问题的解决方法

    这篇文章主要为大家详细介绍了Android Retrofit文件下载进度显示问题的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01

最新评论