J'essaie de créer un tiroir de navigation. J'ai étendu BaseActivity sur ma classe MainActivity et SecondActivityClass. Alors que excecuting l'erreur est:Null Pointer Exception Bouton du widget
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.navigationdrawer.BaseActivity.onPostCreate(BaseActivity.java:19)
je ne comprends pas, quand je l'ai boutons initialisé avant alors ce qui cause l'erreur. `
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;
public class BaseActivity extends AppCompatActivity {
Button inbox, address, logout;
@Override
protected void onPostCreate(Bundle savedInstanceState) {
super.onPostCreate(savedInstanceState);
inbox = (Button) findViewById(R.id.navigation_inbox);
inbox.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(BaseActivity.this, MainActivity.class));
finish();
}
});
address = (Button) findViewById(R.id.navigation_address);
address.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(BaseActivity.this, SecondActivity.class));
finish();
}
});
logout = (Button) findViewById(R.id.navigation_logout);
logout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Toast.makeText(BaseActivity.this, "LoGOUT", Toast.LENGTH_SHORT).show();
finish();
}
});
}
}
peuvent être des boutons sont manquants dans le fichier de mise en page que vous utilisez –
J'ai ajouté des boutons, Il existe deux mises en page distinctes pour MainActivity et SecondActivity. J'ai setContentview dans les classes respectives – Walberg
définissez-vous votre affichage de contenu? –