AlertDialog.Builder in Class auslagern

D

Duckemai

Fortgeschrittenes Mitglied
6
Hallo zusammen,

ich räume derzeit etwas meinen Sourcecode auf und wollte meine AlertDialogs in eine extra Klasse packen. Doch dann bekommt er Probleme mit dem Context this:
AlertDialog.Builder alt_bld = new AlertDialog.Builder(this);//Error

Daher habe ich den Context this aus der aufrufenden Activity mit übergeben, aber auch hier streikt er.

Weiß jemand, wie so etwas zu bewerkstelligen ist?

Danke
Duckemai
 
this ist immer das aktuelle Objekt, du musst da den übergebenen Kontext reinschieben.
 
Hallo!

Das meinte ich mit :
Daher habe ich den Context this aus der aufrufenden Activity mit übergeben, aber auch hier streikt er.
Will meinen, in der funktionsaufrufenden Activity steht das hier:
mymessages.message_OneOkButton("bla", "News", this);

der in der Class MyMessages so aufgefangen wird:
public void message_OneOkButton(String _setMessage, String _setTitle, Context context){
AlertDialog.Builder alt_bld = new AlertDialog.Builder(context);
...

Funktioniert aber nicht. Oder meintest Du etwas anderes?
 
Nein, dass sieht schon etwas anders aus. Nächster Schritt: Logcat. "Funktioniert nicht" gibts nicht. Es gibt immer eine detaillierte Fehlermeldung.
 
ja, Fehlermeldungen habe ich reichlich. Der Aufruf findet in der onCreate statt. Der Alert.Dialog funktioniert dort auch, wenn ich ihn komplett dort hineinschreibe. Aber eben nicht als Funktionsaufruf. Aber auch ein Fktaufruf in der onStart() funktioniert nicht.

LogCat
Code:
  08-05 08:21:00.813: ERROR/AndroidRuntime(617): Uncaught handler: thread main exiting due to uncaught exception
  08-05 08:21:01.083: ERROR/AndroidRuntime(617): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.MyTestApp/com.MyTestApp.MyTestApp}: java.lang.NullPointerException
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2596)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2621)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at android.app.ActivityThread.access$2200(ActivityThread.java:126)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1932)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at android.os.Handler.dispatchMessage(Handler.java:99)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at android.os.Looper.loop(Looper.java:123)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at android.app.ActivityThread.main(ActivityThread.java:4595)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at java.lang.reflect.Method.invokeNative(Native Method)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at java.lang.reflect.Method.invoke(Method.java:521)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at dalvik.system.NativeStart.main(Native Method)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617): Caused by: java.lang.NullPointerException
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at com.MyTestApp.MyTestApp.onCreate(MyTestApp.java:193)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
  08-05 08:21:01.083: ERROR/AndroidRuntime(617):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2544)
  [FONT=Arial]08-05 08:21:01.083: ERROR/AndroidRuntime(617):     ... 11 more[/FONT]
 
Zuletzt bearbeitet:

Ähnliche Themen

D
Antworten
23
Aufrufe
2.498
Data2006
D
Horstmann365
Antworten
1
Aufrufe
1.057
jogimuc
J
OnkelLon
Antworten
13
Aufrufe
1.973
OnkelLon
OnkelLon
Zurück
Oben Unten