问题:
开发过程中,我们肯定会遇到 一个按钮在用户点击第一次没有反应,然后导致用户的一顿狂点,(比如说单身n久的男同胞)然后就出现了程序奔溃(网络交互没做好,发了n次网络请求造成的),或者是退出程序了Toast提示框还在一直乱跳,等等一些问题,
根本原因:
用户对按钮的一顿狂点(当然了最根本的原因还是apk在手机上卡顿)
解决思路:
让按钮在被点击之后的一段时间类是不可点击的,是不是很easy
解决的方案:
因为用到项目上,肯定是要封装的,所以
(1)首先我们使用一个类:
- /**
- * 公共的工具类
- * @author
- *
- */
- public class CommonUtils {
- private static long lastClickTime;
- //这里设置的时间间隔是800ms
- public static boolean isFastDoubleClick(){
- long time = System.currentTimeMillis();
- long timeD = time - lastClickTime;
- if(0<timeD&&timeD< 800){
- return true;
- }
- lastClickTime = time;
- return false;
- }
- }
(2) 使用:
- public void onClick(View v){
- if(CommonUtils.isFastDoubleClick()){
- return;
- }else {
- //弹出Toast或者Dialog,这里网络请求不建议使用(他可以在被被点击后用一个只能用返回键取消的加载框去显示加载)
- }
- }
参考:
http://www.open-open.com/doc/view/363edc4f834641d7878f80d7ad62c63e