view.scrollTo()无效的原因

您所在的位置:网站首页 scrollto不生效 view.scrollTo()无效的原因

view.scrollTo()无效的原因

#view.scrollTo()无效的原因| 来源: 网络整理| 查看: 265

背景:在利用scroller对view进行操作是调用view.scrollTo()失效。

@Override public boolean onTouchEvent(MotionEvent event) { Log.v("SlindingDeleteView", String.valueOf(5)); // TODO Auto-generated method stub if (event.getAction()==MotionEvent.ACTION_UP || event.getAction()==MotionEvent.ACTION_CANCEL) { if (Math.abs(getScrollX())>=width/8) { postDelayed(new Runnable() { @Override public void run() { // TODO Auto-generated method stub scrollTo(width/4, 0); } },200); }else{ postDelayed(new Runnable() { @Override public void run() { // TODO Auto-generated method stub scrollTo(0, 0); } },200); } } return gesturedetector.onTouchEvent(event); }一开始认为是up事件被拦截了,然而debug之后发现并没有拦截,查阅相关资料发现了罪魁祸首:

mScroller.startScroll(mScroller.getFinalX(), mScroller.getFinalY(), (int) distanceX, 0,200);

在这里有一个延时200ms的操作,我暂时理解为在view没有完成这200ms的动作之前,scrollTo()方法是无效的,于是有了上面的postDelayed。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3