toolbar android example




لعب الافتراضي الروبوت صوت زر ، النقر فوق onTouch() الأسلوب (2)

استخدام الأصوات الافتراضية من /system/media/audio/

يساعد MediaPlayer أو SoundPool على تنفيذ التشغيل.

في تطبيق Android لدي بعض الأزرار ، والتي يجب أن تعمل مع طريقة onTouch () ، بالطبع أحتاج إلى تغيير نص الزر ، عند الإصبع في موضع ACTION_DOWN. ولكن يجب أن تلعب هذه الأزرار الافتراضية الروبوت زر النقر (كما في طريقة onClick ()). أين يمكنني العثور على هذا الصوت؟ أعتقد أنه يجب أن يكون في SDK ، ولكن كيف يمكنني العثور عليه؟ وما هي الأساليب الأفضل لمثل هذه العملية؟ أنا أستخدم MediaPlayer.

قائمة:

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;
}

ولطريقة playSound () الخاصة بي:

    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();
    }
}

استخدم هذا الرمز في طريقة onTouch () الخاصة بك:

view.playSoundEffect(android.view.SoundEffectConstants.CLICK);

إذا كنت تبحث ببساطة عن صوت Android مسبق ، فمن الأفضل استخدام هذه الوظيفة التي يتم توفيرها لك مجانًا من خلال إطار العمل. إن القيام بأي شيء آخر ، ما لم يكن ضروريًا للتخصيص ، سيؤدي ببساطة إلى العمل ضد إطار العمل بدلاً من العمل معه.







ontouchlistener