效果图如下:

前提:导入zxing的jar后开始操作,老规矩最后有源码,作者布局默认相对布局。
第一步:定义二维码的长宽高及图片控件

第二步:实例化QRCodeWriter后利用for循环将二维码画出来,然后用图片控件加载图片。

源码如下:
布局文件:

  <Buttonandroid:id="@+id/mybutton"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentTop="true"android:layout_centerHorizontal="true"android:layout_marginTop="0dp"android:text="点击显示二维码"android:textSize="20sp" /><ImageViewandroid:id="@+id/imageView"android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_alignParentBottom="true"android:layout_centerHorizontal="true"android:layout_marginBottom="192dp"android:src="@drawable/ic_launcher_background" /><EditTextandroid:id="@+id/myeditText"android:layout_width="300dp"android:maxLines="1"android:layout_height="wrap_content"android:layout_below="@+id/mybutton"android:layout_centerHorizontal="true"android:ems="10"android:hint="请输入要加载成二维码的内容" />

java文件:

public class MainActivity extends Activity implements View.OnClickListener {private int width = 300;private int height = 300;private ImageView imageView;private Bitmap bit;private Button mybutton;private EditText myeditText;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);initView();}private void initView() {imageView = (ImageView) findViewById(R.id.imageView);mybutton = (Button) findViewById(R.id.mybutton);mybutton.setOnClickListener(this);myeditText = (EditText) findViewById(R.id.myeditText);myeditText.setOnClickListener(this);}@Overridepublic void onClick(View v) {switch (v.getId()) {case R.id.mybutton:String name=myeditText.getText().toString();if(name.equals("")){myeditText.setError("请输入内容");}else{zxing(name);}break;}}private void zxing(String name){QRCodeWriter qrCodeWriter = new QRCodeWriter();Map<EncodeHintType, String> hints = new HashMap<>();hints.put(EncodeHintType.CHARACTER_SET, "utf-8"); //记得要自定义长宽BitMatrix encode = null;try {encode = qrCodeWriter.encode(name, BarcodeFormat.QR_CODE, width, height, hints);} catch (WriterException e) {e.printStackTrace();}int[] colors = new int[width * height];//利用for循环将要表示的信息写出来for (int i = 0; i < width; i++) {for (int j = 0; j < height; j++) {if (encode.get(i, j)) {colors[i * width + j] = Color.BLACK;} else {colors[i * width + j] = Color.WHITE;}}}bit = Bitmap.createBitmap(colors, width, height, Bitmap.Config.RGB_565);imageView.setImageBitmap(bit);}}

Android使用zxing生成二维码相关推荐

  1. Android利用zxing生成二维码

    感谢大佬:https://blog.csdn.net/mountain_hua/article/details/80646089 **gayhub上的zxing可用于生成二维码,识别二维码 gayhu ...

  2. Android利用zxing生成二维码,识别二维码,中间填充图片超详细、超简易教程

    gayhub上的zxing可用于生成二维码,识别二维码 gayhub地址:https://github.com/zxing/zxing 此文只是简易教程,文末附有完整代码和demo下载地址,进入正题: ...

  3. Android之ZXing扫描二维码以及生成二维码

    Android之ZXing扫描二维码以及生成二维码 ZXIng项目地址:ZXing地址 项目结构 扫描二维码:使用 CaptureActivity类 项目代码: import android.cont ...

  4. (转)ZXing生成二维码和带logo的二维码,模仿微信生成二维码效果

    场景:移动支付需要对二维码的生成与部署有所了解,掌握目前主流的二维码生成技术. 1 ZXing 生成二维码 首先说下,QRCode是日本人开发的,ZXing是google开发,barcode4j也是老 ...

  5. zxing生成二维码及解析二维码

    ZXing生成二维码 1.下载jar https://github.com/ZF520/QRCode/raw/master/zxing/bin/lib/zxing3.3.1.jar 2.生成二维码的函 ...

  6. android 解析、生成二维码

    android 解析.生成二维码 (1)ZXing是一个开源Java类库用于解析多种格式的1D/2D条形码.目标是能够对QR编码.Data Matrix.UPC的1D条形码进行解码. 其提供了多种平台 ...

  7. ZXing生成二维码和带logo的二维码,模仿微信生成二维码效果

    首先说下,QRCode是日本人开发的,ZXing是google开发,barcode4j也是老美开发的,barcode4j对一维条形码处理的很好,而且支持的格式很多,当然也可以对二维码进行处理,效果个人 ...

  8. Zxing生成二维码思路和源码解析

    Zxing生成二维码思路和源码解析 本博文是一篇介绍google zxing包生成二维码的思路和它的源码的文章. 一.引入 如何调用zxing的代码生成一个二维码呢?主要的函数只有一个,如下所示: B ...

  9. 五十九、使用ZXing生成二维码

    @Author:Runsen @Date:2020/7/12 人生最重要的不是所站的位置,而是内心所朝的方向.只要我在每篇博文中写得自己体会,修炼身心:在每天的不断重复学习中,耐住寂寞,练就真功,不畏 ...

  10. 27.用zxing生成二维码

    先在idea里面导入jar包 链接:https://pan.baidu.com/s/1UdorNg8o0A4FsElghqkJyw 提取码:c4bt 复制这段内容后打开百度网盘手机App,操作更方便哦 ...

最新文章

  1. 阿里云安装LNMP以及更改网站文件和MySQL数据目录
  2. delphi 获取4位的年份_原来华为手机拨号键盘这么厉害!除了能打电话,还有4个隐藏功能...
  3. java金钱千分位处理_java对金额的处理,保留两位小数、千分位符
  4. SgmlReader使用方法
  5. oracle 查表的用户名和密码,查看Oracle数据库中的所有用户名
  6. kubernetes apiserver认证 1
  7. [转]vim 如何编辑 GB2312 编码的文件?
  8. 高通模式9008模式linux,重磅干货!高通9008模式与数据提取
  9. 基于关系数据库彩票开奖模拟系统 的设计与实现
  10. VisualStudio运行的时候mian已在xxx中定义
  11. PADS逻辑系列含义
  12. 开源小程序CMS网站, JeeWx-App-CMS 1.0 首版本发布
  13. 计算机网络 --- 计算机网络和因特网
  14. 如何高效管理电脑里的文件
  15. android移动支付——微信支付
  16. UI 设计代码化:低代码式设计语言 —— Unflow
  17. 利用Python预测股票价格
  18. javascript之传智播客
  19. telnet远程登录AAA认证
  20. Linux防火墙配置

热门文章

  1. 计算机学win7画图,利用windows画图工具新功能,制作简易3D画图很简单了!-win7画图工具...
  2. vbscript for 转 php for,VBS教程:VBScript 基础-使用循环语句
  3. topaz滤镜 V1.31中文版
  4. 迅雷一些版本下载链接
  5. ubuntu 中的流程图绘制软件
  6. 铺捉factoryreset的事件 ---转载
  7. UitableView 动态高度的优化 提高寻星效率
  8. 浏览器的“心脏”——内核
  9. 东芝2510ac请求维修cd40_TOSHIBA东芝2510复印机维修资料
  10. C++最好的图形库是什么?