展会信息港展会大全

关于frameworks下的NumberPicker.java中快速点击△&▽时消失的BUG
来源:互联网   发布日期:2015-09-29 10:34:03   浏览:2207次  

导读:先看下我们测试人员提的bug票:[MR1][Settings]The updown icon(△▽) disappear in the Set date/time screenChange-Id: Ia5e914cd905d27baeccfa7d30b9f6eac9e00b041TracID: 565DESC: Press th......

先看下我们测试人员提的bug票:

[MR1][Settings]The up&down icon(△&▽) disappear in the "Set date/time" screen

Change-Id: Ia5e914cd905d27baeccfa7d30b9f6eac9e00b041

TracID: 565

DESC: Press the up&down icon(△&▽) quickly (Use two fingers),The up&down icon(△&▽) disappear.

Analysis: Press up&down icon(△&▽) have a time interval,so you shouldn't be interrupt.

Solution: remove qbja2/frameworks/base/core/java/android/widget/NumberPicker.java "mShowInputControlsAnimator.cancel();"

NeedToVerify: 1

NeedToVerify: 1

CleanBuild:0

修改代码如下:

@Override

public boolean onInterceptTouchEvent(MotionEvent event) {

if (!isEnabled() || !mFlingable) {

return false;

}

switch (event.getActionMasked()) {

case MotionEvent.ACTION_DOWN:

mLastMotionEventY = mLastDownEventY = event.getY();

removeAllCallbacks();

//mShowInputControlsAnimator.cancel(); 这里注释掉就解决了

mBeginEditOnUpEvent = false;

mAdjustScrollerOnUpEvent = true;

if (mDrawSelectorWheel) {

boolean scrollersFinished = mFlingScroller.isFinished()

&& mAdjustScroller.isFinished();

if (!scrollersFinished) {

mFlingScroller.forceFinished(true);

mAdjustScroller.forceFinished(true);

onScrollStateChange(OnScrollListener.SCROLL_STATE_IDLE);

}

mBeginEditOnUpEvent = scrollersFinished;

mAdjustScrollerOnUpEvent = true;

hideInputControls();

return true;

}

if (isEventInViewHitRect(event, mInputText)

|| (!mIncrementButton.isShown()

&& isEventInViewHitRect(event, mIncrementButton))

|| (!mDecrementButton.isShown()

&& isEventInViewHitRect(event, mDecrementButton))) {

mAdjustScrollerOnUpEvent = false;

setDrawSelectorWheel(true);

hideInputControls();

return true;

}

break;

case MotionEvent.ACTION_MOVE:

float currentMoveY = event.getY();

int deltaDownY = (int) Math.abs(currentMoveY - mLastDownEventY);

if (deltaDownY > mTouchSlop) {

mBeginEditOnUpEvent = false;

onScrollStateChange(OnScrollListener.SCROLL_STATE_TOUCH_SCROLL);

setDrawSelectorWheel(true);

hideInputControls();

return true;

}

break;

}

return false;

}

赞助本站

人工智能实验室

相关热词: frameworks

相关内容
AiLab云推荐
推荐内容
展开

热门栏目HotCates

Copyright © 2010-2024 AiLab Team. 人工智能实验室 版权所有    关于我们 | 联系我们 | 广告服务 | 公司动态 | 免责声明 | 隐私条款 | 工作机会 | 展会港