点击事件快速点击多次跳转

转载;https://blog.csdn.net/sweetzhangxue/article/details/53259207

listview集合的点击事件重写

public abstract class NoDoubleItemClickListener implements OnItemClickListener {
    public static final int MIN_CLICK_DELAY_TIME = 1000;
    private long lastClickTime = 0;

    @Override
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
        long currentTime = Calendar.getInstance().getTimeInMillis();
        if (currentTime - lastClickTime > MIN_CLICK_DELAY_TIME) {
            lastClickTime = currentTime;
            NoDoubleItemClickListener(view);
        }
    }

    public abstract void NoDoubleItemClickListener(View v);
}
在代码中调用

listView.setOnItemClickListener(new NoDoubleItemClickListener() {
    @Override
    public void NoDoubleItemClickListener(View v) {
        
    }
});

如果你是一个view,可以使用如下解决办法

自己定义一个方法

public abstract class NoDoubleClickListener implements View.OnClickListener {
    public static final int MIN_CLICK_DELAY_TIME = 1000;
    private long lastClickTime = 0;
    @Override
    public void onClick(View v) {
        long currentTime = Calendar.getInstance().getTimeInMillis();
        if (currentTime - lastClickTime > MIN_CLICK_DELAY_TIME) {
            lastClickTime = currentTime;
            onNoDoubleClick(v);
        }
    }
    public abstract void onNoDoubleClick(View v);
}
在代码中调用

view.setOnClickListener(new NoDoubleClickListener() {
    @Override
    public void onNoDoubleClick(View v) {
        
    }
});

猜你喜欢

转载自blog.csdn.net/liu_ser/article/details/79771326
今日推荐