Ответ 1
Вам нужно добавить
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, currenturi);
для установки радиоблока
Я могу успешно поднять рингтон и получить результирующий 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, я хочу сказать сборщику, что это в настоящее время выбрано так, чтобы он мог подсвечивать правильный переключатель. На данный момент ни одна из радиообъектов не выбирается вообще, пока я не нажму одну из них.
Вам нужно добавить
intent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI, currenturi);
для установки радиоблока
Это точный код для вас.
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);
}
});