WEB开发网
开发学院手机开发Android 开发 Android 手机应用的开发经验—QR生成器 阅读

Android 手机应用的开发经验—QR生成器

 2010-08-21 03:25:00 来源:WEB开发网   
核心提示:cn.restore();}} catch (Exception e) {e.printStackTrace();}return canvasBmp;}public Bitmap AndroidQREncode(String strEncoding, int qrcodeVersion) {Log.i("ww

cn.restore();

}

} catch (Exception e) {

e.printStackTrace();

}

return canvasBmp;

}

public Bitmap AndroidQREncode(String strEncoding, int qrcodeVersion) {

Log.i("wwj", "QREncode");

Bitmap canvasBmp = null;

try {

// 构建QRCode编码对象

com.swetake.util.Qrcode testQrcode = new com.swetake.util.Qrcode();

/* L','M','Q','H' */

testQrcode.setQrcodeErrorCorrect('M');//错误修正率

/* "N","A" or other */

testQrcode.setQrcodeEncodeMode('B');

/* 0-20 */

testQrcode.setQrcodeVersion(qrcodeVersion);

// getBytes

byte[] bytesEncoding = strEncoding.getBytes("utf-8");

if (bytesEncoding.length > 0) {

// 转化成boolean数组

bEncoding = testQrcode.calQrcode(bytesEncoding);

int w = 320;

int h = 240;

canvasBmp = Bitmap.createBitmap(w, h, Config.ARGB_8888);//创建一个可改变的Bitmat对象

Canvas cn = new Canvas(canvasBmp);//创建Canvas对象

onDraw(cn);//调用画图函数

cn.save(Canvas.ALL_SAVE_FLAG);

cn.restore();

}

} catch (Exception e) {

e.printStackTrace();

}

return canvasBmp;

}

需要说明的我都做了注释,这段代码用到了第三方的类库SwetakeQRCode.jar包,这个包在http://swetake.com可以下载(该程序使用的函数库版本为ver. 0.50 beta)。这段代码的主要作用就是利用jar包的函数库,把输入的信息转换成产生QR图片文件的二维数组。当然,在这个函数里面我们还创建了Bitmap和Canvas对象,这些都和后面介绍的图片保存有关。

3.5:既然已经生成了产生条形码的依据,剩下就是画图的问题了。

做java的都知道,绘图肯定首先需要一个Canvas,然后在用Graphics在上面绘制自己想要图案。不错,Android上面也类似,你可以从一个Bitmap得到它的Canvas,进行绘制,也可以自定义一个View,用它的Canvas。不同的时,Android里没有Graphics,而用

上一页  3 4 5 6 7 8 9 10 11 12 13  下一页

Tags:Android 手机 应用

编辑录入:coldstar [复制链接] [打 印]
赞助商链接