当我在我的活动中放置三张图片时,它会崩溃。无法找到答案 这个问题。
第一项活动
public class SquareMain extends AppCompatActivity {//MainActivity
private boolean isUserClickedBackButton = false;
@Override
protected void onCreate(Bundle savedInstanceState) {//OnCreate
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_square_main);
mainmusic();
}//OnCreate
public void presshere(View view)//pressherebutton
{
Intent press = new Intent(SquareMain.this, SquareHome.class);
startActivity(press);
}//pressherebutton
public void mainmusic(){//mainmusic
MediaPlayer mainmusic = MediaPlayer.create(SquareMain.this, R.raw.mainmeunsong);//main music
mainmusic.start();//main music
mainmusic.setLooping(true);//main music
}
}//MainActivity
第二项活动
public class SquareHome extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_square_home);
}
}
图片按钮
<ImageButton
android:id="@+id/pressherebutton"
android:layout_width="161dp"
android:layout_height="28dp"
android:layout_marginBottom="8dp"
android:layout_marginTop="8dp"
android:background="@mipmap/squarepresshere"
android:onClick="presshere"
android:scaleType="centerCrop"
android:text="@string/presshere"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.86"
app:srcCompat="@drawable/squarepresshere"
tools:layout_editor_absoluteY="223dp" />
当放置三个以上图像按钮时,我的SecondActivity崩溃。 任何人可能对如何解决这个问题有任何想法?
答案 0 :(得分:1)
那些图像的大小是多少?图像的大小也是我们为了平滑和舒适地渲染图像而必须考虑的因素。高分辨率图像可能会导致ANR。
答案 1 :(得分:0)
在离开MediaPlayer
,覆盖Activity
方法并停止onPause
之前,您需要终止MediaPlayer
。将您的mainmusic
声明为类变量而非本地。
@Override
protected void onPause() {
super.onPause();
if (mainmusic != null) {
if (mainmusic.isPlaying())
mainmusic.stop();
mainmusic.reset();
mainmusic.release();
}
}