现在很多应用在对于提交按钮是否可以点击的判断都是随着用户输入的内容或者勾选的状态而变化的,应该很少有人会如果用户在界面上没有任何输入的时候就让其开始点击按钮吧。这样做首先是增加了用户无谓的操作。另外也是会增加很多的非空判断,实在是不划算。所以才会有这种 如果该输入的还没有输入,该选择的没有任何勾选,那么提交按钮就不点亮还处于不可点击状态这样的设计了。
好,其实今天跟大家说的就是自己现在在用的一个对于这种状态判断与控制的工具类了。下面直接看代码。
/**
* Created by hexiaopang on 2016/11/4.
* 一个监听 edittext,checkbox是否有输入和选中,然后改变“提交”按钮的可提交状态
* 只需要将需要监控的控件例如EditText,CheckBox添加进来,再设置“提交”按钮即可
*/
public class SubmitControl {
private List<View> listViews = null;//用于存储 组件的list集合
private MyTextWatcher myWatcher = null;//edittext以及textview是否有输入的监听
private MyOnCheckedChangedListener myCheckedListener;//checkbox的选中状态监听
private TextView submitButton;//提交“按钮”
private static SubmitControl myControl;
/**
* 获取 单例实例(懒汉式)
*/
public static SubmitControl getInstance() {
if(myControl == null){