看了Vurtexゞ. 文章《[Android实例] 条码扫描二维码扫描——ZXing android 源码简化 (附:支持中文) 》的基础上对代码进行了修改
1、增加了将代码嵌套入自己工程后传值的办法(初学,如果有更好的方法也希望告诉我,先谢谢了)
2、扫码界面进行了处理(初步实现了现有某些软件的样子,至于长的像谁就不说了)
//画四个角的代码<br>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); |
代码下载地址:http://www.eoeandroid.com/forum.php?mod=viewthread&tid=225832&page=1&extra=#pid1997182
再贴一些经典的扫描界面
参考资料:
条码扫描二维码扫描——ZXing android 源码简化 (附:支持中文)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
2008-11-06 tech.ed2008第一天有感