我遇到以下问题:
我有一个带有不同歌曲的微调器。我想做的是当您从微调器中选择一首歌时,媒体播放器将播放这些歌曲。我理解如何进行媒体播放器编码但无法链接它。我是否需要播放器可以使用的每首歌曲或参考ID的某种值?感谢。
我拥有的代码(只有微调器):
package com.example.spinnertutorial;
公共类SpinnerTutorial扩展Activity { /** 在第一次创建活动时调用。 * /
String[] spinnerItems = {
"Song 1", "Song 2", "Song 3", "Song 4", "Song 5"
};
Spinner sp;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ArrayAdapter<String> adapter =
new ArrayAdapter<String> (this,
android.R.layout.simple_spinner_dropdown_item, spinnerItems);
sp = (Spinner)findViewById(R.id.spinner1);
sp.setAdapter(adapter);
sp.setOnItemSelectedListener(new OnItemSelectedListener(){
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2, long arg3){
int item = sp.getSelectedItemPosition();
Toast.makeText(getBaseContext(), "You have selected the playlist: " +spinnerItems[ item], Toast.LENGTH_SHORT).show();
}
public void onNothingSelected(AdapterView<?> arg0){
}
});
} }
答案 0 :(得分:0)
如果您在微调器中使用歌曲文件名,则可以检索这些名称(getSelectedItem()
)并直接在MediaPlayer
中使用它们。
如果您的Spinner
有歌曲标题或与歌曲文件名无关的任何其他字符串,则使用所选索引(使用getSelectedItemPosition()
)从第二个数组中检索文件名,或使用带有歌曲标题和歌曲文件名的HashMap
。 Bundle
类是一个不错的选择。