我想知道当方向改变时如何防止应用重新加载?
我有一个小型测试应用程序,它会播放音频声音,直到按下停止按钮。如果我将我的 Android 或模拟器从水平更改为纵向,则停止按钮不起作用。加载应用程序的第二次出现。无论方向是否已更改,我都希望第一次出现继续运行。
主.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" android:orientation="horizontal">
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_weight="0.64" android:orientation="horizontal">
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Play" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Stop" />
</LinearLayout>
</LinearLayout>
测试.java
import android.app.Activity;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
public class TestAppActivity extends Activity {
private Button btnDisplay;
private MediaPlayer mediaPlayer;
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
setVolumeControlStream(AudioManager.STREAM_MUSIC);
mediaPlayer = MediaPlayer.create(this, R.raw.nut);
mediaPlayer.setLooping(true);
((Button)findViewById(R.id.button1)).setOnClickListener( new View.OnClickListener() {
public void onClick(View v) {
mediaPlayer = MediaPlayer.create(LoopBugActivity.this, R.raw.nut);
mediaPlayer.setLooping(true);
mediaPlayer.start();
}
} );
((Button)findViewById(R.id.button2)).setOnClickListener( new View.OnClickListener() {
public void onClick(View v) {
mediaPlayer.stop();
}
} );
}
}