吾生也有涯,而知也无涯。这篇文章主要讲述Android 滑块验证相关的知识,希望能为你提供帮助。
先上图看看实现效果
文章图片
1.在 app 的 build.gradle 添加依赖
implementation \'com.luozm.captcha:captcha:1.1.2\'
2.将 Captcha 添加至布局文件
< com.luozm.captcha.Captcha android:id="@+id/captCha" android:layout_centerInParent="true" android:layout_width="match_parent" android:layout_height="265dp" android:layout_marginRight="10dp" android:layout_marginLeft="10dp" app:mode="mode_bar" app:src="https://www.songbingjia.com/android/@drawable/validate" app:blockSize="50dp" android:scaleType="centerCrop" app:max_fail_count="4"/>
3.添加 java 代码
public void showw(String advPic) {Context context = MainActivity.this; diaa = new Dialog(context, R.style.edit_AlertDialog_style); diaa.setContentView(R.layout.item_pict); captcha = diaa.findViewById(R.id.captCha); final Button btn_mode = diaa.findViewById(R.id.btn_mode); final Captcha captcha = diaa.findViewById(R.id.captCha); ImageView cuowu = diaa.findViewById(R.id.im_cuowu); // Glide.with(getApplication()).load(advPic).into(captcha ); captcha.setBitmap(advPic); btn_mode.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if (captcha.getMode() == Captcha.MODE_BAR) { captcha.setMode(Captcha.MODE_NONBAR); btn_mode.setText("滑动条模式"); } else { captcha.setMode(Captcha.MODE_BAR); btn_mode.setText("无滑动条模式"); } } }); cuowu.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { diaa.dismiss(); itData(mLongitude, mLatitude); } }); captcha.setCaptchaListener(new Captcha.CaptchaListener() { @Override public String onAccess(long time) { Toast.makeText(MainActivity.this, "验证成功", Toast.LENGTH_SHORT).show(); diaa.dismiss(); diaa.setCanceledOnTouchOutside(true); return "验证通过"; }@Override public String onFailed(int count) { Toast.makeText(MainActivity.this, "验证失败,失败次数" + count, Toast.LENGTH_SHORT).show(); return "验证失败"; }@Override public String onMaxFailed() { Toast.makeText(MainActivity.this, "验证超过次数,你的帐号被封锁", Toast.LENGTH_SHORT).show(); return "可以走了"; }}); diaa.show(); diaa.setCanceledOnTouchOutside(true); Window w = diaa.getWindow(); WindowManager.LayoutParams lp = w.getAttributes(); lp.x = 0; lp.y = 40; diaa.onWindowAttributesChanged(lp); }
【Android 滑块验证】
推荐阅读
- 1027代码审计平台 4-安卓项目
- ASP.NET MVC项目中App_Code目录在程序应用
- Ubuntu编译Android源码步骤
- H5页面关于android软键盘弹出顶起底部元素的解决方案
- 安卓 dex 通用脱壳技术研究
- Android Studio NDK开发环境搭建
- Android驱动中的remap_pfn_range()校验漏洞(CVE-2013-2596)
- Win 8系统下怎样打开/关闭Bing联机搜索?【图文详细教程】
- 如何处理Win8系统打开页面时提示未响应问题?