android zxing生成二维码是bitmap对象,如果保存bitmap到sdcard查看的时候会发现图片是一片漆黑。
解决方法:
Bitmap qrCodeBitmap = EncodingHandler.createQRCode(contentString, 350);//获取根据字符串生成的宽高为350的二维码bitmap对象。
ctrl+左键点击createQRCode,查看EncodingHandler中的createQRCode方法的代码实现。
将以下代码:
int width = matrix.getWidth();
int height = matrix.getHeight();
int[] pixels = new int[width * height];
for (int y = 0; y < height; y++) {
for (int x = 0; x < width; x++) {
if (matrix.get(x, y)) {
pixels[y * width + x] = BLACK;
}
}
}
更改为:
int width = matrix.getWidth();
int height = matrix.getHeight();
int[] pixels = new int[width * height];
for (int y = 0; y < height; y++) {
for (int x = 0; x < width; x++) {
if (matrix.get(x, y)) { // 有信息设置像素点成黑色
pixels[y * width + x] = 0xff000000;
} else { // 无信息设置像素点为白色
pixels[y * width + x] = 0xffffffff;
}
}
}
搞定
转载请注明:http://blog.csdn.net/zjx_android/article/details/17373237