Java MediaPlayer数组导致Android中出现空指针

Java MediaPlayer数组导致Android中出现空指针,java,android,Java,Android,有人知道为什么我会用这段代码得到一个NullPointerException吗?代码基本上是创建一个MediaPlayer数组,这样我就可以在其中循环并同时停止/启动所有MediaPlayer。它们还链接到Seekbar以控制音量 private MediaPlayer[] media; /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceSt

有人知道为什么我会用这段代码得到一个NullPointerException吗?代码基本上是创建一个MediaPlayer数组,这样我就可以在其中循环并同时停止/启动所有MediaPlayer。它们还链接到Seekbar以控制音量

private MediaPlayer[] media;


/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);


    //media players

    media[0] = MediaPlayer.create(this, R.raw.drums);



    media[1] = MediaPlayer.create(this, R.raw.bass);


    media[2] = MediaPlayer.create(this, R.raw.synth);


    media[3] = MediaPlayer.create(this, R.raw.snare);


    media[4]  = MediaPlayer.create(this, R.raw.wobble);


    for(int i=0;i<media.length;i++){
         media[i].start();
         media[i].setLooping(true);
         media[i].setVolume(0,0);
    }


   //drums seekbar

    final SeekBar volControl = (SeekBar)findViewById(R.id.volbar);
    volControl.setMax(maxVolume);       
    volControl.setProgress(0);
    volControl.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { 



        @Override
        public void onStopTrackingTouch(SeekBar arg0) {
            // TODO Auto-generated method stub

        }


        @Override
        public void onStartTrackingTouch(SeekBar arg0) {
            // TODO Auto-generated method stub
        }

        @Override
        public void onProgressChanged(SeekBar arg0, int arg1, boolean arg2) {
            // TODO Auto-generated method stub

            media[0].setVolume(arg1, arg1);

        }                       

    });       
private MediaPlayer[]媒体;
/**在首次创建活动时调用*/
@凌驾
创建时的公共void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//媒体播放器
媒体[0]=MediaPlayer.create(this,R.raw.drums);
media[1]=MediaPlayer.create(this,R.raw.bass);
media[2]=MediaPlayer.create(this,R.raw.synth);
media[3]=MediaPlayer.create(this,R.raw.snare);
media[4]=MediaPlayer.create(这是R.raw.wobble);
对于(int i=0;i使用like

 media=new MediaPlayer[5]; 
然后

media[0] = MediaPlayer.create(this, R.raw.drums);
media[1] = MediaPlayer.create(this, R.raw.bass);
media[2] = MediaPlayer.create(this, R.raw.synth);
media[3] = MediaPlayer.create(this, R.raw.snare);

 media=new MediaPlayer[5]; 
然后

media[0] = MediaPlayer.create(this, R.raw.drums);
media[1] = MediaPlayer.create(this, R.raw.bass);
media[2] = MediaPlayer.create(this, R.raw.synth);
media[3] = MediaPlayer.create(this, R.raw.snare);

老兄,你没有给mediaplayer阵列提供大小,无论如何,尝试这种方式会有所帮助

私有媒体播放器[]媒体播放器

在活动的onCreate方法中,将其大小设置为


mediaPlayer=newmediaplayer[10];

老兄,你没有给mediaPlayer数组指定大小,不管怎样,试试这个方法会有帮助的

私有媒体播放器[]媒体播放器

在活动的onCreate方法中,将其大小设置为


mediaPlayer=new mediaPlayer[10];

欢迎你,我认为接受/提升投票也是感谢的方式欢迎你,我认为接受/提升投票也是感谢的方式