Seltsamer Fehler in onCreate

P

Pyrdacor

Neues Mitglied
0
Hallo zusammen,

ich arbeite mich momentan in die App Entwicklung für Android ein und bin in diesem Bereich noch bei 0.

Programmieren kann ich, daher fällt das Lernen leichter. Jedoch bin ich hier gerade vor einem Phenomen, welches mich ratlos macht.

Code:
public class MainActivity extends ActionBarActivity implements OnClickListener {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        if (savedInstanceState == null) {
            getSupportFragmentManager().beginTransaction()
                    .add(R.id.container, new PlaceholderFragment())
                    .commit();
        }

        //If here, app crashes on start...
        //Button btn = (Button)findViewById(R.id.login_btn);
        //btn.setText("Teeeeeest!!!"); <== crashes at this position | Unable to start activity ComponentInfo{com.example.app/com.example.app.MainActivity}: java.lang.NullPointerException
    }

    @Override
    public void onClick(View view) {
        Toast.makeText(getApplicationContext(), Locale.getDefault().getCountry(), Toast.LENGTH_SHORT).show();
        //If here, app works fine...
        //Button btn = (Button)findViewById(R.id.login_btn);
        //btn.setText("Teeeeeest!!!");
    }

wie in dem Kommentaren beschrieben, an der einen Stelle funktioniert es, an der anderen nicht. Dabei sagt mir die Doku, dass eben an der Stelle (in der onCreate Funktion) der Bereich für solche Vorgänge ist.

onCreate()
Called when the activity is first created. This is where you should do all of your normal static set up: create views, bind data to lists, etc. This method also provides you with a Bundle containing the activity's previously frozen state, if there was one.
Always followed by onStart().

Oder habe ich da was absolut falsch verstanden???
 
Zuletzt bearbeitet:
Joa, der Button existiert, hier die Struktur aus dem View
Code:
<Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="5dp"
        android:layout_marginRight="5dp"
        android:text="@string/login_btn_text"
        android:id="@+id/login_btn"
        android:layout_below="@+id/server_input"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_alignRight="@+id/server_input"
        android:layout_alignEnd="@+id/server_input"
        android:onClick="onClick" />

Da ist auch der onClick Trigger (eine Art Notfalllösung), habe es vorher mit einem btn.setOnClickEventListener(this); versucht.

---
Das mit der NullPointerException habe ich mir auch gedacht, dass er das Element nicht finden kann, aber an der Stelle sollte er es ja laut Definition finden können. Weiter unten (in der onClick Funktion) findet er das ja.
Habe mir auch einige Tutorials im Internet unter anderem auf YouTube angeschaut und da wird es genau so gemacht, die App wird im Emulator ausgeführt und da meckert nichts.

Info: Verwende Android Studio 0.4.2
 
Zuletzt bearbeitet:

Ähnliche Themen

D
Antworten
23
Aufrufe
2.665
Data2006
D
D
Antworten
3
Aufrufe
472
jogimuc
J
OnkelLon
Antworten
13
Aufrufe
2.011
OnkelLon
OnkelLon
Zurück
Oben Unten