在我的第一个活动中,向左或向右触摸会打开第二个活动
值计算x和y的活动将根据条件打开。这是密码的一部分

case MotionEvent.ACTION_MOVE:

    if (v.getId() == R.id.layout3) {

        float currentX = event.getX();
        float currentY = event.getY();

        if ((currentX > 160.0) && (currentY > 5.0) && (currentY < 55.0) &&(downXValue < 146.0)){
            startActivity(i);
        }
    }
    break;

所以这里一切都很顺利。
问题是,活动开始时会在彼此上方不断累积
如果我想回到第一个活动,你应该按五次以上按钮
这意味着第二个活动的开放次数超过了5次。
我是Android新手。我想知道问题在哪里,正确的方法是什么,错误在哪里。谢谢你

最佳答案

您可以添加一个标志来检查活动是否已启动:

private activityStarted = false;

if (!activityStarted && (currentX > 160.0) && (currentY > 5.0) && (currentY < 55.0) && (downXValue < 146.0)){
    activityStarted = true;
    startActivity(i);
}

10-07 12:59