Ошибка загрузки активити
Всем привет, нужна помощь! Есть код
содержимое 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;
}