Ошибка загрузки активити

Всем привет, нужна помощь! Есть код

содержимое MainActivity.java:

import androidx.annotation.RawRes;
import androidx.appcompat.app.AppCompatActivity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.MotionEvent;
import android.view.View;

public class MainActivity extends AppCompatActivity implements View.OnTouchListener {
    private long down;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        findViewById(R.id.ID_electric_shield).setOnTouchListener(this);
}
    public boolean onTouch(View view, MotionEvent motionEvent) {
        switch (motionEvent.getAction()) {
            case MotionEvent.ACTION_DOWN:
                down = System.currentTimeMillis();
                break;
            case MotionEvent.ACTION_UP:
                if (System.currentTimeMillis() - down < 350)
                    play(R.raw.electric_shield);
                else
                    startActivity(MainActivity.this, supply_system.class);
                break;
        }
        return false;
    }
}

Содержимое activity main.xml:

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@color/black"
    tools:context=".MainActivity">

    <ImageButton
        android:id="@+id/ID_electric_shield"
        android:layout_width="109dp"
        android:layout_height="98dp"
        android:layout_alignParentTop="true"
        android:layout_alignParentRight="true"
        android:layout_marginTop="261dp"
        android:layout_marginRight="124dp"
        android:onClick="sound_electric_shield"
        android:scaleType="center"
        android:src="@drawable/electric_shield" />
</RelativeLayout>

Ошибка вот здесь: startActivity(MainActivity.this, supply_system.class); https://i.imgur.com/IRjipgq.png

Помогите пожалуйста исправить


Ответы (1 шт):

Автор решения: En32

Кажется я всё понял нужно было создать openNewActivity в MainActivity.java Внизу я прописал:

 public void openNewActivity(){
        Intent intent = new Intent(this, supply_system.class);
        startActivity(intent);
    }

а где onTouch:

public boolean onTouch(View view, MotionEvent motionEvent) {
        switch (motionEvent.getAction()) {
            case MotionEvent.ACTION_DOWN:
                down = System.currentTimeMillis();
                break;
            case MotionEvent.ACTION_UP:
                if (System.currentTimeMillis() - down < 350)
                    play(R.raw.electric_shield);
                else
                openNewActivity();
                break;
        }
        return false;
    }
→ Ссылка