Android用于校驗集合參數(shù)的小封裝示例
更新時間:2017年10月16日 09:09:00 作者:Jlanglang
本篇文章主要介紹了Android-用于校驗集合參數(shù)的小封裝示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
前言
android開發(fā)中,你是否對表單校驗深惡痛覺.
是否還在寫大量的if else來校驗參數(shù)是否輸入?
這個文章可能能給你幫助.
直接見代碼:
/**
* Created by Jlanglang on 2017/9/4 0004.
*/
public class SimpleParams extends HashMap<String, Object> {
//這里放key,與校驗失敗后的提示內(nèi)容
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則說明,該參數(shù)不校驗
if (!TextUtils.isEmpty(s)) {
//傳入回調(diào),自定義處理
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);
}
}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Android開發(fā)教程之如何屏蔽View的重復(fù)點擊
這篇文章主要給大家介紹了關(guān)于Android開發(fā)教程之如何屏蔽View的重復(fù)點擊的相關(guān)資料,文中通過實例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-09-09
Flutter利用SizeTransition實現(xiàn)組件飛入效果
本文將為大家介紹SizeTransition,SizeTransition用于更改子組件的尺寸來實現(xiàn)動畫,支持垂直方向或水平方向修改動畫。本文將利用其實現(xiàn)組件飛入效果,需要的可以參考一下2022-04-04
Android LayoutInflater中 Inflate()方法應(yīng)用
本文主要介紹Android 中Inflate 方法的用法, 在開發(fā)Android應(yīng)用過程中,可以在程序中應(yīng)用 Inflate()方法加載新布局,希望能幫助有需要的朋友2016-07-07

