Fehlermeldung wg "null object"

  • Antworten:4
  • OffenNicht stickyBentwortet
  • Forum-Beiträge: 2

28.12.2015, 20:10:47 via Website

Bei meinen ersten Gehversuchen hänge ich an einem vermeintlichen einfachen Problem und komme nicht weiter. Ich möchte von meiner Mainaktivity eine Subactivity aufrufen und von dieser wieder zurück zur Main (die Sub dabei beenden). Jedoch schmiert mir nach dem Aufruf der Subactivity diese an der Stelle der Textzuweisung zum Button ab button.setText(R.string.btn2);
Die Fehlermeldung, die im Monitor ausgegeben wird java.lang.RuntimeException: Unable to start activity ....SubActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Button.setText(int)' on a null object reference

Wo liegt der Fehler, der Button auf der SubActivity ist im Designmodus sichtbar und mit button2 benamt?

public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    Button button = (Button) findViewById(R.id.button1);
    button.setText(R.string.btn1);
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent subaktiv = new Intent( MainActivity.this, SubActivity.class);
            startActivity(subaktiv);
        }
    });
}

}

....

public class SubActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Button button = (Button) findViewById(R.id.button2);
    button.setText(R.string.btn2);
    button.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent mainaktiv = new Intent( SubActivity.this, MainActivity.class);
            startActivity(mainaktiv);
            finish();
        }
    });
}

}

Antworten
Gelöschter Account
  • Forum-Beiträge: 2.492

28.12.2015, 20:12:25 via App

Du hast in der subactivity setContentView(...main) ist das richtig? Hast du da das richtige layout gewählt?

Antworten
  • Forum-Beiträge: 2

28.12.2015, 21:51:00 via Website

Vielen Dank Lars, das war der Fehler!

Da wollte ich durch Kopieren der einen Klasse in die Sub und anschließendem Ändern der entsprechenden Stellen Zeit sparen, hab dann mit dem Übersehen dieses Parameters unterm Strich massiv Zeit verschwendet.

Trotzdem danke und Gruß
Peter

Antworten
Gelöschter Account
  • Forum-Beiträge: 2.492

28.12.2015, 21:59:25 via App

Gerne. Ja das passiert häufig beim kopieren/einfügen.
Gruß

— geändert am 28.12.2015, 21:59:36

Antworten
  • Forum-Beiträge: 11.184

28.12.2015, 22:01:37 via App

Hallo Peter Gast!

Super, wenn deine Frage geklärt ist, setze doch bitte noch deinen Thread auf "Beantwortet"!

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten