In meiner Android-App habe ich einige Tasten, die mit onTouch() Methode funktionieren sollte, natürlich muss ich Button Text ändern, wenn Finger in ACTION_DOWN Position. Aber diese Tasten sollten Standard android Sound der Schaltfläche klicken (wie in onClick() -Methode) zu spielen. Wo kann ich solchen Klang finden? Ich denke, es muss in SDK sein, aber wie kann ich es finden? Und welche Methoden sind für einen solchen Betrieb besser? Ich benutze den MediaPlayer.Standard Android Sound der Schaltfläche, klicken Sie aufTouch() Methode
Listing:
public boolean onTouch(View v, MotionEvent event) {
int action = event.getAction();
switch (action) {
case MotionEvent.ACTION_DOWN:
addTextShadow(v);
Log.v(LOG_TAG, "ACTION_DOWN");
break;
case MotionEvent.ACTION_MOVE:
clearTextShadow(v);
isMoved = true;
Log.v(LOG_TAG, "ACTION_MOVE");
break;
case MotionEvent.ACTION_UP:
Log.v(LOG_TAG, "ACTION_UP");
if (!isMoved) {
clearTextShadow(v);
if (v.getId() == R.id.btn_new) {
Log.v(LOG_TAG, "New pressed");
playSound(); //MY METHOD TO PLAY SOUND
} else if (v.getId() == R.id.btn_saved) {
Log.v(LOG_TAG, "Saved pressed");
} else if (v.getId() == R.id.btn_random) {
Log.v(LOG_TAG, "Random pressed");
}
}
isMoved = false;
break;
}
return true;
}
Und meine playsound() Methode:
public void playSound(){
if (mp != null) {
mp.release();
mp = null;
}
try {
mp = MediaPlayer
.create(MyActivity.this, R.raw.sound); //BUT HERE I NEED DEFAULT SOUND!
mp.start();
} catch (Exception e) {
e.printStackTrace();
}
}
Spielt Android nicht standardmäßig den Klick-Sound nach "Standard"? Zumindest tut es das bei ICS. –
Vishwa Patel, nein, Android spielt den Standardklickton, wenn wir onClickListener, aber nicht onTouchListener verwenden. Ich teste alle Programme mit ICS (SGS2). – dmgmyza