我正在開發一個Android應用程序,此應用程序有十幾個活動,每個活動都用於相應的屏幕。現在我在屏幕頂部有這個共同的字幕欄。 這個字幕欄有一個按鈕,顯示一個警告對話框,顯示鏈接列表以轉到不同的屏幕。將此傳遞給外部類,並從Android的alertdialog列表中啓動活動
我可以寫一個相同的功能,每次活動都打電話警告對話框中,但是這將是乏味的,如果我要修改它們,所以我創建這個類:
public class MenuAlertDialog extends Activity {
/*
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
}
*/
public void createMenu(final Context context){
AlertDialog.Builder dlg = new AlertDialog.Builder(context);
dlg.setTitle("menu");
String[] items = {"pageA", "pageB", "pageC", "pageD", "pageE"};
dlg.setItems(items, new DialogInterface.OnClickListener(){
@Override
public void onClick(DialogInterface dialog, int which){
switch(which){
case 0:
Intent intent = new Intent(context, MainActivity.class);
startActivity(intent);
break;
default:
break;
}
}
});
dlg.show();
}
}
,並從每個活動叫它,像這樣:
MenuAlertDialog menu = new MenuAlertDialog();
menu.createMenu(this);
from onCreate內部。
它可以顯示alertDialog,但是無論何時按下pageA鏈接,它都會失敗並出現意外錯誤。
logcat的說,它的一個nullpointererror和原因似乎
startActivity(intent);
我在做什麼錯?
意向意圖=新意圖(背景下,MainActivity.class)更換;在上面的代碼上下文中的 是空的,這是原因。 –
嗯,與你的問題無關,但你爲什麼要將你的課程擴展爲活動?如果你在上面發佈的內容是該類中的所有內容,那麼使用任何東西來擴展該類是完全多餘的。 – dymmeh
Android_Crazy感謝您的快速響應!你能否告訴我我該如何解決?請。 – Kou