直播商城系统源码,安卓验证码的简单实现
直播商城系统源码,安卓验证码的简单实现
首先是要获取 随机的四个字母组合,我这里是将26个字母存储到一个数组中,然后随机生成4个下标值,取这四个下标值对应的字母作为验证码。
1 | <br> public class RandomChars {<br> char[] chars;<br> public RandomChars() {<br> chars = new char[26];<br> for (int i = 0; i < 26; i++) {<br> chars[i] = (char) (i + 65);<br> }<br> }<br> public char[] get4Chars() {<br> char[] rlt = new char[4];<br> for (int i = 0; i < rlt.length; i++) {<br> int randomIndex = (int) (Math.random() * 26);<br> rlt[i] = chars[randomIndex];<br> }<br> return rlt;<br> }<br>}<br> |
自定义一个CodeView进行验证码的绘制,主要在onDraw方法中操作,学艺不精,还不能好好在onMeasure中控制大小位置等。
1 | float unitWidth = (float) getWidth() / (float) chars.length;<br> for (int i = 0; i < chars.length; i++) {<br> String str = chars[i] + "" ;<br> textPaint.getTextBounds(str, 0, str.length(), mRect);<br> resetColor();<br> int angel = (int) (Math.random()*(8-(-8)+1)+(-8));<br> canvas.rotate(angel); //旋转字母,随机角度<br> canvas.drawText(str, i * unitWidth + 5, getHeight() / 2 - mRect.centerY(), textPaint);<br> /**<br> * 很关键,旋转<br> */<br> canvas.save();//保存状态<br> canvas.restore();//恢复<br> }<br>/**<br> * 重新设置随机颜色<br> */<br> private void resetColor() {<br> int r = (int) (Math.random() * 230 - 30);<br> int g = (int) (Math.random() * 230 - 30);<br> int b = (int) (Math.random() * 230 - 30);<br> textPaint.setColor(Color.rgb(r, g, b));<br> } |
以上就是 直播商城系统源码,安卓验证码的简单实现,更多内容欢迎关注之后的文章
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
2022-07-12 短视频开发app,Android 强制应用全局横屏或竖屏
2022-07-12 直播平台源码,JavaScript表单验证密码强度
2022-07-12 成品直播源码,轮播图无缝切换以及自动悬停
2021-07-12 直播软件搭建,iOS 单个验证码输入框
2021-07-12 搭建直播带货平台,Android Activity旋转屏幕横屏实现全屏
2021-07-12 直播带货系统,android Edittext 输入数字跟字母