Android用于校验集合参数的小封装示例

前言

android开发中,你是否对表单校验深恶痛觉.

是否还在写大量的if else来校验参数是否输入?

这个文章可能能给你帮助.

直接见代码:

/**
 * Created by Jlanglang on 2017/9/4 0004.
 */

public class SimpleParams extends HashMap<String, Object> {
 //这里放key,与校验失败后的提示内容
 private HashMap<Object, String> checkParams = new HashMap<>();

 public static SimpleParams create() {
 return new SimpleParams();
 }
 //返回this,链式编程
 public SimpleParams putP(String key, Object value) {
 this.putP(key, value, "");
 return this;
 }

 public SimpleParams putP(String key, Object value, String emptyMessage) {
 this.put(key, value);
 checkParams.put(key, emptyMessage);
 return this;
 }

 /**
 * 检查params
 *
 * @param context
 * @return
 */
 public boolean checkValue(Context context) {
 return checkValue(context, null);
 }

 /**
 * 检查params
 *
 * @param context
 * @return
 */
 public boolean checkValue(Context context, CheckParamsCallback checkParamsCallback) {
 Set<String> strings = keySet();
 for (String str : strings) {
  Object value = get(str);
  if (value == null || "".equals(value)) {
  String s = checkParams.get(str);
  //emptyMessage则说明,该参数不校验
  if (!TextUtils.isEmpty(s)) {
   //传入回调,自定义处理
   if (checkParamsCallback != null) {
   checkParamsCallback.callBack(s);
   } else {
   //默认Toast提示.
   Toast.makeText(context, s, Toast.LENGTH_SHORT).show();
   }
   return false;
  }
  }
 }
 return true;
 }

 public interface CheckParamsCallback {
 void callBack(String s);
 }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • android中实现手机号码的校验的示例代码

    现在应用中都有对手机号码的校验,我以我自己的方式实现了一把,下面是效果图 1.核心代码很简单,如下: /** * 验证手机格式 */ public static boolean isMobileNO(String mobiles) { /* * 移动:134.135.136.137.138.139.150.151.157(TD).158.159.187.188 * 联通:130.131.132.152.155.156.185.186 电信:133.153.180.189.(1349卫通) * 总

  • Android APP之WebView校验SSL证书的方法

    Android系统的碎片化很严重,并且手机日期不正确.手机根证书异常.com.google.android.webview BUG等各种原因,都会导致WebViewClient无法访问HTTPS站点.SSL错误的处理方式十分关键,如果处理不当,可能导致中间人攻击,黑客窃听数据,进而引发安全事故. 严谨地处理onReceivedSslError尤为重要.请参考以下代码,原理是:如果webview报告SSL错误,程序将会对服务器证书进行强校验,如果服务器传入证书的指纹(sha256)与记录值一致,说

  • android 关于利用签名的SHA1进行安全校验的方法之一(推荐)

    最近做安卓项目中使用到了百度地图的API,在申请百度地图key的时候,需要我们填入"签名的SHA1"和"客户端包名",然后百度为我们生成一个key. 于是就引发了思考,百度为何需要我们客户端签名的SHA1值呢? 第一想法就是:百度拿我们输入的参数SHA1和包名进行一些列算法计算,生成一个key返回给我们. 为了证明这个想法,写了demo进行测试,android获取包名的方法很简单,但是我们还需要从客户端中获取keystore的指纹SHA1. 进行各种资料的查找和分析

  • Android webview手动校验https证书(by 星空武哥)

    有些时候由于Android系统的bug或者其他的原因,导致我们的webview不能验证通过我们的https证书,最明显的例子就是华为手机mate7升级到Android7.0后,手机有些网站打不开了,而更新了webview的补丁后就没问题了,充分说明系统的bug对我们混合开发webview加载https地址的影响是巨大的.那么我们怎么去解决这个问题呢? 首先我们去分析一下出现的原因 当webview加载https地址的时候,如果因为证书的问题出错的时候就会走onReceivedSslError()

  • Android 校验email是否合法实现代码

    Android 校验email是否合法 这个其实跟JAVA中是一样的.例子: String regEx = "^(([\\w-]+\\.)+[\\w-]+|([a-zA-Z]{1}|[\\w-]{2,}))@" +"((([0-1]?[0-9]{1,2}|25[0-5]|2[0-4][0-9])\\.([0-1]?" +"[0-9]{1,2}|25[0-5]|2[0-4][0-9])\\." +"([0-1]?[0-9]{1,2}|25

  • Android用于校验集合参数的小封装示例

    前言 android开发中,你是否对表单校验深恶痛觉. 是否还在写大量的if else来校验参数是否输入? 这个文章可能能给你帮助. 直接见代码: /** * Created by Jlanglang on 2017/9/4 0004. */ public class SimpleParams extends HashMap<String, Object> { //这里放key,与校验失败后的提示内容 private HashMap<Object, String> checkPar

  • Android自定义图片集合

    本文主要包括以下内容: 使用Xfermode设置圆角图片 使用BitmapShader设置圆角图片 滑动旋转缩放的bimp图片 图片颜色处理(滑动) 图片 + 文字 其中1,2是两种不同方式处理图片圆角的情况.3,是通过Matrix进行图片缩放,旋转等.4,是通过Matrix操作图片的处理,包括去饱和,四角黑影,中心突出等.5,图片加文字组合显示. 如果暂时感觉这些看不懂: 先看看这两篇: Android自定义控件深入学习 Android生成随机验证码 详解Android自定义控件属性Typed

  • Android实现QQ手机管家悬浮小火箭效果

    今天是2013年的最后一天了,这里首先提前祝大家新年快乐!同时,本篇文章也是我今年的最后一篇文章了,因此我想要让它尽量有点特殊性,比起平时的文章要多一些特色.记得在今年年初的时候,我写的第一篇文章是模仿360手机卫士的桌面悬浮窗效果,那么为了能够首尾呼应,今年的最后一篇文章就同样还是来实现桌面悬浮窗的效果吧,当然效果将会更加高级. 相信用过QQ手机管家的朋友们都会知道它有一个小火箭加速的功能,将小火箭拖动到火箭发射台上发射就会出现一个火箭升空的动画,那么今天我们就来模仿着实现一下这个效果吧. 这

  • 详解Android获得系统GPU参数 gl.glGetString

    详解Android获得系统GPU参数 gl.glGetString 通过文档的查找,以及源码的剖析,Android的GPU信息需要通过OpenGL来获取,android framework层提供GL10来获取相应的参数,而GL10要在使用自定义的View时才可以获得,下面是获得GPU信息的例子: 1.实现Render类 class DemoRenderer implements GLSurfaceView.Renderer { public void onSurfaceCreated(GL10

  • SpringBoot常见get/post请求参数处理、参数注解校验及参数自定义注解校验详解

    目录 springboot常见httpget,post请求参数处理 PathVaribale获取url路径的数据 RequestParam获取请求参数的值 注意 GET参数校验 POSTJSON参数校验 自定义注解校验 总结 spring boot 常见http get ,post请求参数处理 在定义一个Rest接口时通常会利用GET.POST.PUT.DELETE来实现数据的增删改查:这几种方式有的需要传递参数,后台开发人员必须对接收到的参数进行参数验证来确保程序的健壮性 GET一般用于查询数

  • android使用intent传递参数实现乘法计算

    本文实例为大家分享了android使用intent传递参数实现乘法计算的具体代码,供大家参考,具体内容如下 主界面上是两个EditText和一个按钮.用于输入两个数字参数. calcute.xml: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    

  • vue-ajax小封装实例

    1. js 文件: /* * ajax封装: * 1. 引入文件 * 2. new Vue().ajax.get(url,data,fn,ojson), 或 new Vue().ajax.post(url,data,fn,ojson) * url: 需要获取数据的文件地址 (string) * data: 需要发送的信息 (可省略) (obj) * fn: 获取信息后的回调函数,接收到的返回值为data (function) * ojson: 是否需要转换为json格式 (可省略) (设置为 "

  • Android OKHTTP的单例和再封装的实例

    Android OKHTTP的单例和再封装的实例 /** * Created by zm on 16-2-1 * okhttp的再封装,对于2.x版本,3.x版本将原有对okhttpclient配置 * 改成了builder模式配 * 置,对于超时.代理.dns,okhttp已经做好了配置, * 若不需要特殊配置,可以跳过 */ public class OkHttpUtil { private static OkHttpClient singleton; //非常有必要,要不此类还是可以被ne

  • 讲解Android中的Widget及AppWidget小工具的创建实例

    1.Widget .App Widget .Web App 的概念 Widget最初的概念是98年一个叫Rose的苹果工程师提出,直到2003年的时候才正式为大家所知,不过随后无数大公司都开始接受并应用这一思路. 现在我们看到在苹果系统里按下F4弹出的Dashboard里的小工具叫Widget,在Windows 7里侧边栏上的那些漂亮的小工具叫Gadget(widget变体?),除此以外还有yahoo Widget等等Widget产品.他们有一个共同的特点就是采用前台Web开发用的技术(譬如HT

  • node实现生成带参数的小程序二维码并保存到本地功能示例

    本文实例讲述了node实现生成带参数的小程序二维码并保存到本地功能.分享给大家供大家参考,具体如下: 注意:小程序必须要上线才能获取到小程序二维码,否则会报错.. 使用node koa2框架,生成小程序二维码,需要引入两个模块 var requestp = require('request-promise'); var fs = require('fs'); // 载入fs模块 通过微信接口,获取小程序二维码,并保存到本地.返回图片名称. var wxapi = {}; module.expor

随机推荐