我的Android视图如何停止事件?
我创建了一个水平方向盘视图。它的功能很好,但当我把它放在Wizardroid的一个步骤中,当我制作滚动滚轮来滑动页面时。 如何解决这个问题 我的代码我的Android视图如何停止事件?,android,view,swipe,wizard,touch-event,Android,View,Swipe,Wizard,Touch Event,我创建了一个水平方向盘视图。它的功能很好,但当我把它放在Wizardroid的一个步骤中,当我制作滚动滚轮来滑动页面时。 如何解决这个问题 我的代码onTouchEvent: @Override public boolean onTouchEvent(MotionEvent event) { super.onTouchEvent(event); int maskedAction = event.getActionMasked(); switch (maskedActio
onTouchEvent
:
@Override
public boolean onTouchEvent(MotionEvent event) {
super.onTouchEvent(event);
int maskedAction = event.getActionMasked();
switch (maskedAction) {
case MotionEvent.ACTION_DOWN:
case MotionEvent.ACTION_POINTER_DOWN: {
lastPosX = event.getX();
break;
}
case MotionEvent.ACTION_MOVE: { // a pointer was moved
isScrolling = true;
float eventX = event.getX();
float mouvmentDistance = (lastPosX - eventX) * mouvmentRatio;
if (Math.abs(mouvmentDistance) > distance) {
}
newValue = (float)(selectedValue + Math.floor(mouvmentDistance) * step);
decallage = (float)((lastPosX - eventX) - (Math.floor(mouvmentDistance)));
if (newValue > maxValue)
newValue = maxValue;
if (newValue < minValue)
newValue = minValue;
this.setValue(newValue, true);
break;
}
case MotionEvent.ACTION_UP:
case MotionEvent.ACTION_POINTER_UP:
isScrolling = false;
this.setValue(newValue, false);
break;
}
return true;
}
@覆盖
公共布尔onTouchEvent(运动事件){
超级事件(事件);
int maskedAction=event.getActionMasked();
开关(掩蔽){
case MotionEvent.ACTION\u DOWN:
case MotionEvent.ACTION\u指针\u向下:{
lastPosX=event.getX();
打破
}
case MotionEvent.ACTION_MOVE:{//指针已移动
isScrolling=true;
float eventX=event.getX();
float mouvmentDistance=(lastPosX-eventX)*mouvcentratio;
if(数学绝对值(移动距离)>距离){
}
新值=(浮动)(选定值+数学楼层(移动距离)*步长);
十层=(浮动)((lastPosX-eventX)-(数学层(mouvmentDistance));
如果(新值>最大值)
newValue=maxValue;
如果(新值<最小值)
newValue=minValue;
此.setValue(newValue,true);
打破
}
case MotionEvent.ACTION\u UP:
case MotionEvent.ACTION\u指针\u向上:
IsCrolling=假;
this.setValue(newValue,false);
打破
}
返回true;
}
我通过使用SeekBar扩展视图解决了这个问题