Java 如何将声音从raw带到listview并更改其名称?
我必须从raw中获取声音并在Java 如何将声音从raw带到listview并更改其名称?,java,android,listview,audio,text,Java,Android,Listview,Audio,Text,我必须从raw中获取声音并在列表视图中显示它们,我可以这样做,但名称与raw中的文件夹名称相同 我怎样才能用我想要的名字来更改它们?(它还将播放的歌曲写入文本视图) 这是我的密码: MediaPlayer-mp; Uri; 列表视图列表视图; TextView textBilgi; @凌驾 创建时受保护的void(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.acti
列表视图中显示它们,我可以这样做,但名称与raw中的文件夹名称相同
我怎样才能用我想要的名字来更改它们?(它还将播放的歌曲写入文本视图)
这是我的密码:
MediaPlayer-mp;
Uri;
列表视图列表视图;
TextView textBilgi;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_giris);
Field[]fields=R.raw.class.getFields();
String[]mediaList=新字符串[fields.length];
for(int count=0;count
将您最喜欢的文件名添加到您的\u数组\u列表中并添加到适配器中,然后medialist添加到您的URI文件中,然后检查问题是否已解决
public class MediaPlay extends BaseActivity {
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();
final 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);
List<String> your_array_list = new ArrayList<String>();
your_array_list.add("Test One");
your_array_list.add("Test Two");
your_array_list.add("Test Three");
ArrayAdapter<String> adapter = new ArrayAdapter<String>(
MediaPlay.this, android.R.layout.simple_list_item_1,
your_array_list);
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/" + mediaList[position];
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.]");
}
});
}
}
公共类MediaPlay扩展了BaseActivity{
MediaPlayer mp;
Uri;
列表视图列表视图;
TextView textBilgi;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_giris);
Field[]fields=R.raw.class.getFields();
final String[]mediaList=新字符串[fields.length];
for(int count=0;count
public class MediaPlay extends BaseActivity {
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();
final 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);
List<String> your_array_list = new ArrayList<String>();
your_array_list.add("Test One");
your_array_list.add("Test Two");
your_array_list.add("Test Three");
ArrayAdapter<String> adapter = new ArrayAdapter<String>(
MediaPlay.this, android.R.layout.simple_list_item_1,
your_array_list);
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/" + mediaList[position];
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.]");
}
});
}
}