2013-11-22 15 views
13

Witam, czy istnieje sposób na przycisk wibrowania, ale tylko wtedy, gdy sprawdzany jest warunek if?Wibracja onclick

oto kod:

Vibrator vibe = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE) ; 

if(l2>=l1){ 
     insertactone.setBackgroundColor(Color.RED); 

    }; 

tutaj jest metoda onclick dla insertactone:

einsertactone = (Button) findViewById(R.id.bsqlinsertactone); 
    insertactone.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      switch (v.getId()) { 
      case R.id.bsqlinsertactone: 
       insertactoneClick(); 
       break; 
      } 
     } 

     private void insertactoneClick() { 
      startActivity(new Intent(
        "com.example.everydaybudgetplanner.ACTONESQLENTRY")); 
     } 

    }); 

chcę go wibrować tylko wtedy, gdy warunek IF jest weryfikowana

TY wszystko w z wyprzedzeniem

Odpowiedz

31

czy istnieje sposób na przycisk wibrowania, ale tylko wtedy, gdy sprawdzany jest warunek if?

Tak. Wygląda na to, że masz już 95% kodu. Gdzie utknąłeś?

Masz już obiekt Vibrator i warunkowy. Wszystko, co musisz teraz zrobić, to zadzwonić vibrate() tak:

Vibrator vibe = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE); 

if(l2 >= l1) { 
    insertactone.setBackgroundColor(Color.RED); 
    vibe.vibrate(100); 
} 

Nie zapomnij, że trzeba zwrócić
'<uses-permission android:name="android.permission.VIBRATE" />
w swoim manifeście.

+0

to nadal nie działa tak, jak chcę go! Po prostu chcę, aby wibrował, gdy użytkownik kliknie, jeśli już jest CZERWONY –

+0

Co zrobiłeś, żeby go debugować? Co oznacza "to nie działa"? Czy to się psuje? Czy to się kompiluje? –

+0

nic w tym stylu! Problem polega na tym, że za każdym razem wibruje i uruchamiam działanie zawierające ten kod. Chcę go tylko wibrować, gdy naciśnięcie przycisku –

2

<uses-permission android:name="android.permission.VIBRATE" />

Pamiętaj dodano pozwolenie na AndroidManifest

+1

To nie daje odpowiedzi na pytanie. Po uzyskaniu wystarczającego [reputation] (http://stackoverflow.com/help/whats-reputation) będziesz mógł [komentować dowolny wpis] (http://stackoverflow.com/help/privileges/comment); zamiast tego [dostarczaj odpowiedzi, które nie wymagają wyjaśnień od pytającego] (http://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-can- i-do-zamiast). - [Z recenzji] (/ opinia/niskiej jakości-posty/12278247) –

+2

@ Vini.g.fer Jak to nie jest próbą udzielenia odpowiedzi? Może to być całkowicie błędne, [ale nie oznacza to, że powinniśmy nadużywać kolejek recenzji, aby je usunąć.] (Http://meta.stackoverflow.com/q/287563/1849664) – Undo