Я должен взять звуки из raw и показать их в listview
, я могу сделать это, но имена совпадают с именами папок в raw.
Как мне поменять их на нужные мне имена? (Также записывает воспроизводимую песню в текстовое представление)
Вот мой код:
MediaPlayer mp;
Uri uri;
ListView listView;
TextView textBilgi;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_giris);
Field[] fields = R.raw.class.getFields();
String[] mediaList = new String[fields.length];
for (int count = 0; count < fields.length; count++)
mediaList[count] = fields[count].getName();
textBilgi = (TextView) findViewById(R.id.textBilgi1);
listView = (ListView) findViewById(R.id.listview);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(
giris.this, android.R.layout.simple_list_item_1,
mediaList);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String uri = "android.resource://" + getPackageName() + "/raw/"
+ ((TextView) view).getText();
if (mp != null && mp.isPlaying())
mp.stop();
mp = MediaPlayer.create(getApplicationContext(), Uri.parse(uri));
mp.start();
textBilgi.setText(((TextView) view).getText() + " ["
+ mp.getDuration() / 1000 + " sn.]");
}
});
}