我有一個擴展Application的類。 的目標是顯示一個AlertDialog(1個OK按鈕),在apllication開始後,然後才(每用戶運行的應用程序的時間,但每次輸入用戶從其它活動的主要活動時間不)。如何在擴展應用程序的類中顯示AlertDialog
主要活動的名稱是Activity1。
所以這裏是一個擴展應用程序的類:
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
Activity1 myActivity1=new Activity1();
AlertDialog.Builder builder = new AlertDialog.Builder(myActivity1);
builder.setMessage("Hello").setCancelable(false).setPositiveButton("OK", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int id) {
//do things
}
});
AlertDialog alert = builder.create();
alert.show();
}
}
這是我的錯誤:
java.lang.RuntimeException: Unable to create application…...NullPointerException: Attempt to invoke virtual method 'android.content.pm.ApplicationInfo android.content.Context.getApplicationInfo()' on a null object reference
我猜活動1是不正確的說法。我也嘗試了這個「這個」論點。我的意思是:
AlertDialog.Builder builder = new AlertDialog.Builder(this);
它也沒有幫助。
如果有人有這個任何想法,我會感激的幫助。謝謝!
爲什麼不在主Activity的onCreate()方法中顯示對話框? –
@ Bidhan A嗨,因爲每當我進入這個活動時,我都會看到這個對話框,我希望只在應用程序開始時才能看到它。 – Eliran
抱歉挑剔,但您需要定義「應用程序開始」的含義。 這是第一次創建MainActivity(而不是在每個方向之後)? 如果我按回家按鈕,離開它一段時間,然後回來?請注意,該活動可能仍然在後臺,因此它只是放在前臺。 – user3673613