【问题标题】:My program crashes when I rotate my phone旋转手机时程序崩溃
【发布时间】:2016-09-20 15:26:07
【问题描述】:

我正在构建一个简单的应用程序,当程序启动文本闪烁并播放歌曲时。当我旋转手机时,它应该会改变风景并重新播放歌曲。我可以做第一部分,但是当我改变风景时它会崩溃。如果我删除 onPause 方法,它会起作用,但是当我这样做时,音乐会继续在后台播放,并且它也会从头开始。同时播放两首歌曲。

 import android.media.MediaPlayer;
 import android.os.Bundle;
 import android.os.Handler;
 import android.support.v7.app.AppCompatActivity;
 import android.view.View;
 import android.widget.TextView;

public class MainActivity extends AppCompatActivity {
MediaPlayer ourSong;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    ourSong = MediaPlayer.create(this,R.raw.fixyou);
    ourSong.start();
    blinkText();
}

 @Override
protected void onPause(){
    super.onPause();
    ourSong.release();
    finish();
}

private void blinkText() {
    // TODO Auto-generated method stub
    final Handler handler = new Handler();
    new Thread(new Runnable() {
        @Override
        public void run() {
            int timeToBlink = 500;    //in ms
            try{
                Thread.sleep(timeToBlink);
            }catch (Exception e) {

            }
            handler.post(new Runnable() {
                @Override
                public void run() {
                    TextView txt = (TextView) findViewById(R.id.tv);
                    if(txt.getVisibility() == View.VISIBLE){
                        txt.setVisibility(View.INVISIBLE);
                    }else{
                        txt.setVisibility(View.VISIBLE);
                    }
                    blinkText();
                }
            });
        }}).start();



}
}

【问题讨论】:

  • 你需要处理onconfigurationchanged
  • @surya 我在哪里做的,是我需要创建的新动作监听器。我是这方面的新手,非常感谢您的帮助

标签: java android media-player


【解决方案1】:
 android:configChanges="orientation|screenSize"

在清单文件中所需的活动标签中使用此行 像这样

<activity
android:name=".PActivity"
android:label="@string/title_activity_r"
android:noHistory="true"
android:configChanges="orientation|screenSize">
</activity>

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多