我在视图寻呼机内有一个圆形和三角形图像。
我正在尝试使用触摸式侦听器沿着圆形图像移动三角形图像。 但是当我移动三角形时,屏幕/片段也移动到下一个,因为我正在使用视图寻呼机。
我这样做是为了在调用三角形或圆形的触摸式监听器时,不会调用触摸侦听器上的查看寻呼机。
更新:添加代码
mCurrTempIndicator.setOnTouchListener(new MyOnTouchListener());
private class MyOnTouchListener implements OnTouchListener {
private double startAngle;
@Override
public boolean onTouch(View v, MotionEvent event) {
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
if (mThermostatCentreXOnScreen == 0 || mThermostatCentreYOnScreen == 0){
int centerXOnImage=mThermostatBgrd.getWidth()/2;
int centerYOnImage=mThermostatBgrd.getHeight()/2;
mThermostatCentreXOnScreen=mThermostatBgrd.getLeft()+centerXOnImage;
mThermostatCentreYOnScreen=mThermostatBgrd.getTop()+centerYOnImage;
mStartPosX = event.getRawX();
mStartPosY = event.getRawY();
float dx = event.getX() - mThermostatCentreXOnScreen;
float dy = event.getY() - mThermostatCentreYOnScreen;
float r = FloatMath.sqrt((dx * dx) + (dy * dy));
////
break;
case MotionEvent.ACTION_MOVE:
dx = event.getX() - mThermostatCentreXOnScreen;
dy = event.getY() - mThermostatCentreYOnScreen;
r = FloatMath.sqrt((dx * dx) + (dy * dy));
mEndPosX = event.getX();
mEndPosY = event.getY();
case MotionEvent.ACTION_UP:
allowRotating = true;
break;
}
return true;
}
谢谢和问候, 晴天
答案 0 :(得分:0)
如果return true
中的onTouchListener
代表三角形和圆圈,则会消耗该事件,而父母则不会接收该事件。