P
pascals
Neues Mitglied
- 0
Hallo,
bin momentan dabei ein wenig Erfahrung in der Entwicklung von Android-Apps zu sammeln und programmiere meine erste eigene App. Bin dabei jedoch leider auf ein Problem gestoßen, bei welchem ich nicht weiß, wie ich das beheben kann.
Ich habe eine Methode erstellt, die Buttons mit einem Inhalt erstellt, welcher in der Datenbank abgespeichert ist. Diese benötigt View view als Parameter:
Das ist natürlich nicht alles, was in der Methode steht, aber läuft alles ungefähr nach dem Schema ab, nur später in einer for-Schleife und halt mir Daten aus der Datenbank.
Wenn ich diese Methode über einen Button abrufe funktioniert auch alles einwandfrei.
Wenn ich es jedoch versuche in onCreate abzurufen (mit getData()) fehlt da natürlich ein Parameter.
Nehme ich das View view raus, lösche also den Parameter, kommt folgender Laufzeit-Fehler:
Wie kann ich diese Methode beim Erstellen der Activity erfolgreich aufrufen?
Danke für eure Hilfe!
mfG Pascal
bin momentan dabei ein wenig Erfahrung in der Entwicklung von Android-Apps zu sammeln und programmiere meine erste eigene App. Bin dabei jedoch leider auf ein Problem gestoßen, bei welchem ich nicht weiß, wie ich das beheben kann.
Ich habe eine Methode erstellt, die Buttons mit einem Inhalt erstellt, welcher in der Datenbank abgespeichert ist. Diese benötigt View view als Parameter:
Code:
public void getData(View view) {
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
RelativeLayout.LayoutParams paramsII = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, 3);
Button create_button = new Button(this);
ImageView line = new ImageView(this);
create_newProfile_Button(create_button, 100, params, paramsII, 100, 80, 0, 0, 18, "NEW PROFILE", line);
[...]
}
Das ist natürlich nicht alles, was in der Methode steht, aber läuft alles ungefähr nach dem Schema ab, nur später in einer for-Schleife und halt mir Daten aus der Datenbank.
Wenn ich diese Methode über einen Button abrufe funktioniert auch alles einwandfrei.
Wenn ich es jedoch versuche in onCreate abzurufen (mit getData()) fehlt da natürlich ein Parameter.
Nehme ich das View view raus, lösche also den Parameter, kommt folgender Laufzeit-Fehler:
Code:
08-24 16:46:49.169 5992-5992/de.ps2406.apc.autoprofile E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: de.ps2406.apc.autoprofile, PID: 5992
java.lang.RuntimeException: Unable to start activity ComponentInfo{de.ps2406.apc.autoprofile/de.ps2406.apc.autoprofile.MainActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.RelativeLayout.addView(android.view.View)' on a null object reference
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2411)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2474)
at android.app.ActivityThread.access$800(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1359)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:155)
at android.app.ActivityThread.main(ActivityThread.java:5696)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1028)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.RelativeLayout.addView(android.view.View)' on a null object reference
at de.ps2406.apc.autoprofile.MainActivity.create_newProfile_Button(MainActivity.java:169)
at de.ps2406.apc.autoprofile.MainActivity.getData(MainActivity.java:77)
at de.ps2406.apc.autoprofile.MainActivity.onCreate(MainActivity.java:58)
at android.app.Activity.performCreate(Activity.java:5958)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1129)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2364)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2474)
at android.app.ActivityThread.access$800(ActivityThread.java:144)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1359)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:155)
at android.app.ActivityThread.main(ActivityThread.java:5696)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1028)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:823)
Wie kann ich diese Methode beim Erstellen der Activity erfolgreich aufrufen?
Danke für eure Hilfe!
mfG Pascal