现在我将做一个读取手机本地一个文件夹里面的所有音乐文件。

    File file=new File("sdcard/我的音乐/");

    创建一个指定文件路径的file;

    String[] music=file.list();

    列出File对象的所有文件盒路径名,返回String数组

 

 

在layout中如下:

简单android音乐播放器中 android学习(四)_第1张图片

 

 

 代码如下:  

package com.shihao_music;

import java.io.File;
import java.io.IOException;

import android.media.MediaPlayer;
import android.os.Bundle;
import android.app.Activity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends Activity {

 private Button bn1;
    private Button bn2;
    private Button bn3;
    private Button bn4;
    private Button bn5;
    private TextView text1;
    MediaPlayer player=new MediaPlayer();           //定义一个Mediaplayer变量,用来实现播放                           
    private static final String  SD_PATH = new String("sdcard/我的音乐/");  //设置文件夹的路径
    File file=new File("sdcard/我的音乐/");
    String[] music=file.list();
    int ind=0;         //定义一个要播放音乐文件的索引
  
    //加载音频资源文件 
    void play(int index)
 {  
  try {
   player.reset(); 
   player.setDataSource(SD_PATH +music[index]);
   player.prepare();
  } catch (IOException e) {
   // TODO Auto-generated catch block
   e.printStackTrace();
  } 
  text1.setText(music[index]);
  
 }
   
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  
  //获得用来显示歌名的TextView
  text1=(TextView)findViewById(R.id.textView1);
  //获得5个按钮
  bn1=(Button)findViewById(R.id.button1);
  bn2=(Button)findViewById(R.id.button2);
  bn3=(Button)findViewById(R.id.button3);
  bn4=(Button)findViewById(R.id.button4);
  bn5=(Button)findViewById(R.id.button5);
  //为4个控制按钮绑定监听器
  bn1.setOnClickListener(new Play());
  bn2.setOnClickListener(new Play());
  bn3.setOnClickListener(new Play());
  bn4.setOnClickListener(new Play());
  bn5.setOnClickListener(new Play());
       
 }
 
  
 //定义开始播放的监听器
 class Play implements OnClickListener{
  
  @Override
  public void onClick(View v) {
   switch (v.getId()) {
         case R.id.button1:                    //开始播放
         {  
          play(ind);
          if(!player.isPlaying())  
                   player.start();
             break;
         }
         case R.id.button2:                    //暂停播放
          if(player.isPlaying())          
                    player.pause();
             break;
         case R.id.button3:                    //停止播放
          if(player.isPlaying())          
                    player.stop();
             break;
         case R.id.button4:                    //播放下一首
         {
             ind++;
          player.stop();
          player.reset();
          play(ind);
          player.start();        
          break;
         }
         case R.id.button5:
         {
          ind--;
          player.stop();      
          play(ind);
          player.start();        
          break;
          
         }
         default:
             break;

  }

  }
 }
}

注:private static final String  SD_PATH = new String("sdcard/我的音乐/");
    File file=new File("sdcard/我的音乐/");

中的路径要看自己手机而设置。

运行结果:享受听歌吧

 

 

音乐播放器(上): http://blog.csdn.net/moshihao/article/details/8885685

 

更多相关文章

  1. [转]Android 中自定义View的应用.
  2. [原] Android 自定义View步骤
  3. Android中访问sdcard路径的几种方式
  4. Android整理笔记——1.3.2.1自定义view的实现 基础篇
  5. Android 辅助功能(无障碍)自定义开发类似微信抢红包插件
  6. IOS/Android 移动端原生及自定义控件开发集v0.1
  7. Android中的Button自定义点击效果之改变点击时按钮的颜色
  8. Android自定义控件——仿ios开关按钮

随机推荐

  1. 怎样使用android自带例子程序
  2. Android(安卓)软键盘遮挡三种解决方案
  3. [Android]设置Activity为全屏显示的两种
  4. 【30篇突击 android】源码统计二
  5. Android(安卓)studio编译时出现aapt.exe
  6. Android(安卓)Activity界面切换添加动画
  7. 文件的读写操作
  8. Android设计和开发系列第二篇:Action Bar(
  9. Android获取本机电话号码的简单方法
  10. android 中禁止输入特殊字符小结