0

出于某种原因,当我在代码中声明 onResume() 时,它会无缘无故地使我的程序崩溃,甚至没有打开。

这是我的 onResume() 代码:

public void onResume()
    {
        if(play==true)
        {
            if(playing==false)
            {
                if(numbl>0)
                {
                letter=thefull.substring(cur, cur+1);
                if(letter.equals("m"))
                {
                    oursong = MediaPlayer.create(MainActivity.this, R.raw.m);
                    oursong.start();
                    playing=true;
                }
                else if(letter.equals("a"))
                {
                    oursong = MediaPlayer.create(MainActivity.this, R.raw.a);
                    oursong.start();
                    playing=true;
                }
                else if(letter.equals("r"))
                {
                    oursong = MediaPlayer.create(MainActivity.this, R.raw.r);
                    oursong.start();
                    playing=true;
                }
                }
            }


        }

    }

一旦我删除 onResume() 程序运行得很好。难道我做错了什么?

这是我的完整代码: http: //pastebin.com/faVfFK6q

4

1 回答 1

6

你必须完成android活动的生命周期。

如果你重写 onResume() 或生命周期的任何方法,你应该调用 super.onResume();

public void onResume(){
super.onResume();

/// Your Code
}

更新

您检查的条件是 onResume() 方法不正确。

if(play) // UPDATE HERE
        {
            if(!playing)// UPDATE HERE
            {
                if(numbl>0)
                {
                letter=thefull.substring(cur, cur+1);
                if(letter.equals("m"))
                {
                    oursong = MediaPlayer.create(MainActivity.this, R.raw.m);
                    oursong.start();
                    playing=true;
                }
                else if(letter.equals("a"))
                {
                    oursong = MediaPlayer.create(MainActivity.this, R.raw.a);
                    oursong.start();
                    playing=true;
                }
                else if(letter.equals("r"))
                {
                    oursong = MediaPlayer.create(MainActivity.this, R.raw.r);
                    oursong.start();
                    playing=true;
                }
                }
            }


        }
于 2013-08-31T06:15:51.107 回答