亲宝软件园·资讯

展开

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

Jlanglang 人气:0
想了解Android用于校验集合参数的小封装示例的相关内容吗,Jlanglang在本文为您仔细讲解Android校验集合参数封装的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Android校验集合参数,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);
 }
}

加载全部内容

相关教程
猜你喜欢
用户评论