Java “我的第二个活动”在放置“有三个以上图像”按钮时崩溃

Java “我的第二个活动”在放置“有三个以上图像”按钮时崩溃,java,android,android-layout,Java,Android,Android Layout,当我在活动中放置三个图像时,它崩溃。无法找到 这个问题 第一项活动 public class SquareMain extends AppCompatActivity {//MainActivity private boolean isUserClickedBackButton = false; @Override protected void onCreate(Bundle savedInstanceState) {//OnCreate super.

当我在活动中放置三个图像时,它崩溃。无法找到 这个问题

第一项活动

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);
    }
}
第二项活动

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" />

当放置三个以上的图像按钮时,“我的第二个活动”崩溃。
有人知道如何解决这个问题吗?

这些图像的大小是多少??图像的大小也是我们为了平滑和舒适地渲染图像所必须考虑的因素。高分辨率图像可能导致ANR。

您需要在离开
活动之前终止
MediaPlayer
,覆盖
onPause
方法并停止
MediaPlayer
。将您的
mainmusic
声明为类变量而非本地变量

@Override
protected void onPause() {
    super.onPause();
    if (mainmusic != null) {
        if (mainmusic.isPlaying())
            mainmusic.stop();
        mainmusic.reset();
        mainmusic.release();
    }
}

代码中的图像按钮在哪里?请在问题中包含崩溃日志I编辑问题并将其放置在图像按钮编码中是否包含日志?没有它我无法解决问题。我知道了,但谢谢你的帮助