Подтвердить что ты не робот

Набор рингтонов - набор радиокнопок

Я могу успешно поднять рингтон и получить результирующий uri со следующим кодом...

    selsound_button.setOnClickListener(new OnClickListener()
    {   
        public void onClick(View arg0)
        {
            Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
            intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE, "Select ringtone for notifications:");
            intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT, false);
            intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_DEFAULT, true);
            intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE,RingtoneManager.TYPE_ALARM);
            startActivityForResult( intent, 999);   
        }
    });

... но мне не удалось выяснить, как сделать следующее:

Учитывая, что я уже знаю текущий uri, я хочу сказать сборщику, что это в настоящее время выбрано так, чтобы он мог подсвечивать правильный переключатель. На данный момент ни одна из радиообъектов не выбирается вообще, пока я не нажму одну из них.

4b9b3361

Ответ 1

Вам нужно добавить

   intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, currenturi);

для установки радиоблока

Ответ 2

Это точный код для вас.

selsound_button.setOnClickListener(new OnClickListener() {

        public void onClick(View arg0) {
            final Uri currentTone= RingtoneManager.getActualDefaultRingtoneUri(YourActivity.this, RingtoneManager.TYPE_ALARM);
            Intent intent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER);
            intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TYPE, RingtoneManager.TYPE_ALARM);
            intent.putExtra(RingtoneManager.EXTRA_RINGTONE_TITLE, "Select Tone");
            intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, currentTone);
            intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT, false);
            intent.putExtra(RingtoneManager.EXTRA_RINGTONE_SHOW_DEFAULT, true);
            startActivityForResult(intent, TONE_PICKER);
        }

    });