Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

249
Views
Rama duplicada en 'interruptor'. Cómo evitar la advertencia

Tengo un código para mi MotionEvent en la aplicación de Android. Tiene la condición cuando suelto el último dedo (ACTION_UP), y la condición cuando suelto el dedo, pero cualquier otro dedo sigue en la pantalla (ACTION_POINTER_UP). Entonces, estas son dos condiciones diferentes y necesito ejecutar el código en ambos casos. Pero el compilador me dice que tengo exactamente el mismo código y ofrece fusionar estas dos secciones en una.

¿Cómo puedo evitar esta advertencia?

Hay un código:

 switch (event.getAction() & MotionEvent.ACTION_MASK) { case MotionEvent.ACTION_DOWN: // first touch // some code for a touch break; case MotionEvent.ACTION_POINTER_DOWN: // second and more touch // some code for a second touch break; case MotionEvent.ACTION_MOVE: // code when the finger moves break; case MotionEvent.ACTION_UP: // left side if (event.getPointerId(event.getActionIndex()) == fingerOnALeftSide) { Log.d("tag", "Now we release the finger that was on a left side"); leftFingerInTouch = false; } // right side if (event.getPointerId(event.getActionIndex()) == fingerOnARightSide) { Log.d("tag", "Now we release the finger that was on a right side"); myBluetooth.send(COMMAND_STOP_ENGINE); } break; case MotionEvent.ACTION_POINTER_UP: // left side if (event.getPointerId(event.getActionIndex()) == fingerOnALeftSide) { Log.d("tag", "Now we release the finger that was on a left side"); leftFingerInTouch = false; } // right side if (event.getPointerId(event.getActionIndex()) == fingerOnARightSide) { Log.d("tag", "Now we release the finger that was on a right side"); myBluetooth.send(COMMAND_STOP_ENGINE); } break; default: break; }
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Se parece a esto y funciona.

 case MotionEvent.ACTION_UP: case MotionEvent.ACTION_POINTER_UP: // left side if (event.getPointerId(event.getActionIndex()) == fingerOnALeftSide) { Log.d("tag", "Now we release the finger that was on a left side"); leftFingerInTouch = false; } // right side if (event.getPointerId(event.getActionIndex()) == fingerOnARightSide) { Log.d("tag", "Now we release the finger that was on a right side"); myBluetooth.send(COMMAND_STOP_ENGINE); } break; default: break;
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!