在Spinner中选择Song然后播放Android开发歌曲

时间:2011-06-10 01:24:47

标签: android media-player spinner

我遇到以下问题:

我有一个带有不同歌曲的微调器。我想做的是当您从微调器中选择一首歌时,媒体播放器将播放这些歌曲。我理解如何进行媒体播放器编码但无法链接它。我是否需要播放器可以使用的每首歌曲或参考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){
        }
    });

} }

1 个答案:

答案 0 :(得分:0)

  • 如果您在微调器中使用歌曲文件名,则可以检索这些名称(getSelectedItem())并直接在MediaPlayer中使用它们。

  • 如果您的Spinner有歌曲标题或与歌曲文件名无关的任何其他字符串,则使用所选索引(使用getSelectedItemPosition())从第二个数组中检索文件名,或使用带有歌曲标题和歌曲文件名的HashMapBundle类是一个不错的选择。

相关问题