-1

I am trying to open two activities from two different buttons respectively, but when I run my app it crashes instantly. Please help I don't know much about android programming.

Here is my activity code in which both buttons are:

  @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_b);
    video1=(VideoView)findViewById(R.id.video1);
    b1=(Button)findViewById(R.id.button);
    b2=(Button)findViewById(R.id.button2) ;
    Uri u=Uri.parse("android.resource://"+getPackageName()+"/"+R.raw.video2);
    video1.setVideoURI(u);
    video1.start();
    video1.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
        @Override
        public void onPrepared(MediaPlayer mediaPlayer) {
            mediaPlayer.setLooping(true);
        }

    });
    b2.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            startActivity(new Intent(ActivityB.this,LoginPage.class));
            overridePendingTransition(R.anim.fadein,R.anim.fadeout);
        }
    });
    b1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            startActivity(new Intent(ActivityB.this,login.class));
            overridePendingTransition(R.anim.fadein,R.anim.fadeout);
        }
    });

}

here is log cat :

2019-09-20 15:06:48.417 4196-4196/com.example.splash E/AndroidRuntime: FATAL EXCEPTION: main Process: com.example.splash, PID: 4196 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.splash/com.example.splash.ActivityB}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3121) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3260) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1976) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:193) at android.app.ActivityThread.main(ActivityThread.java:6912) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:860) Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setOnClickListener(android.view.View$OnClickListener)' on a null object reference at com.example.splash.ActivityB.onCreate(ActivityB.java:42) at android.app.Activity.performCreate(Activity.java:7144) at android.app.Activity.performCreate(Activity.java:7135) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1293) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3101) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3260)  at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78)  at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108)  at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68)  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1976)  at android.os.Handler.dispatchMessage(Handler.java:106)  at android.os.Looper.loop(Looper.java:193)  at android.app.ActivityThread.main(ActivityThread.java:6912)  at java.lang.reflect.Method.invoke(Native Method)  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:860) 

here is activity_b.xml:

<VideoView
    android:id="@+id/video1"
    android:layout_width="0dp"
    android:layout_height="0dp"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="1.0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintVertical_bias="0.0" />

<Button
    android:id="@+id/button"
    android:layout_width="159dp"
    android:layout_height="55dp"
    android:background="@android:color/holo_green_light"
    android:fontFamily="@font/maven_pro"
    android:text="GET STARTED"
    android:textColor="#FFFFFF"
    app:layout_constraintBottom_toBottomOf="@+id/video1"
    app:layout_constraintEnd_toEndOf="@id/video1"
    app:layout_constraintHorizontal_bias="0.47"
    app:layout_constraintStart_toStartOf="@id/video1"
    app:layout_constraintTop_toTopOf="@+id/video1"
    app:layout_constraintVertical_bias="0.887" />

<Button
    android:id="@+id/button2"
    android:layout_width="97dp"
    android:layout_height="29dp"
    android:background="@drawable/mybutton"
    android:fontFamily="@font/maven_pro"
    android:text="Login"
    android:textColor="#FFFFFF"
    app:layout_constraintBottom_toBottomOf="@+id/video1"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintHorizontal_bias="0.458"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent"
    app:layout_constraintVertical_bias="0.707" />
Phantômaxx
  • 37,901
  • 21
  • 84
  • 115

1 Answers1

0

b1=(Button)findViewById(R.id.botton);

Should be:

b1=(Button)findViewById(R.id.button);

As a result b1 was null as R.id.botton was not recognised, so a null pointer was thrown when you attempted to attach an on click listener to it.

Keith Kirk
  • 255
  • 3
  • 16
  • tried bro still not working and the app is crashing on clicking button b2 not b1 – Aditya Patel Sep 20 '19 at 10:31
  • 1
    The crash shown in your logact was during the creation of the activity. If you are now able to click a button then it means that the activity completed it's creaton without a problem. A click on the button causing a crash is a different issue to the one you posted about. – Keith Kirk Sep 20 '19 at 10:53