android click防止多次重复点击

public abstract class DebouncingOnClickListener implements View.OnClickListener{
    private static boolean enabled = true;// 默认应是可以使用的
    pirvate static final int DELY = 300;
    private static final Runnable ENABLE_AGAIN = new Runable(){
        @Override
        public void run(){
            enable = true;// 重置标记为true
        }
    }
    @Override
    public final void onClick(View v){
        if(enable){// 先判断是否可用
            enable = false;
            v.postDelay(ENABLE_AGAIN, delay);// 延迟发送一个runable,使标记可用
            doClick(v);
         }
    }
    public abstract void doClick(View v);
} 

猜你喜欢

转载自blog.csdn.net/a90123/article/details/67632410