android 关于仿window8下沉效果的问题

来源:互联网 发布:怎么申请淘宝直播达人 编辑:程序博客网 时间:2024/05/17 07:56

转载前请注明链接:http://blog.csdn.net/daiwei714/article/details/45028083


大家好,之前我写过一篇关于window8下沉效果的帖子,不知道大家在使用有没有发现问题。我自己在使用的过程中发现两个问题:

1.在anim2动画未执行完毕(弹起动画)的时候就会跳转到其它的activity      2.当与ScrollView共用的时候会出现滑动过程中会跳转到其它activity的问题


下面给出问题的解决办法


1.第一个问题的解决办法:

之前的代码:

case MotionEvent.ACTION_UP:                  mHandler.post(new Runnable() {                      @Override                      public void run() {                          anim1.end();                          anim2.start();                      }                  });                  if (listener != null) {                      listener.onClick(this);                  }                  break; 

这里表示当event在up的时候先执行动画的事件,在执行OnClick事件。但会在anim2未执行完就执行OnClick事件。


代码改为:

case MotionEvent.ACTION_UP:                mHandler.post(new Runnable() {                    @Override                    public void run() {                        anim1.end();                        anim2.start();                    }                });                anim2.addListener(new AnimatorListenerAdapter() {                    @Override                    public void onAnimationEnd(Animator animation) {                        if (listener != null) {                            listener.onClick(ClickLinearLayout.this);                        }                    }                });                break;

这里表示当event在up的时候先执行动画的事件,然后当anim2弹起动画执行完毕以后在执行OnClick操作。这里第一个问题就解决了。


2.第二个问题的解决方案:


之前的代码Cancel的时候是空的,现在改为:

            case MotionEvent.ACTION_CANCEL:            mHandler.post(new Runnable() {                    @Override                    public void run() {                        anim1.end();                        anim2.start();                    }                });

这里在执行ontouch的move之前先执行Cancel会让anim2执行,即让动画恢复到原始状态。


之前的Move也是空的,现在改为:

            case MotionEvent.ACTION_MOVE:                anim2.removeAllListeners();                break;

这里是清除动画的事件,否则会导致滑动过程中跳转到activity,第二问 题解决。


其实还有个小问题,就是当Move的时候最好不要执行下沉动画,暂时没有解决。不过已无伤大雅,有解决方案的童鞋们可给我评论,后期解决了我也会加上的,感谢~~~


0 0
原创粉丝点击