我有一個應用程序,必須創建一個數據庫,如果失敗了,那麼沒有任何意義前進。我已經構建了一個AlertDialog和show()
它,但它從不顯示。由於缺少數據庫,邏輯貫穿始終,然後落入酒吧。什麼是停止活動並提醒用戶的最佳方式?
發出消息並暫停活動的正確/最佳方式是什麼?下面的代碼執行得很好(意味着show()
出現在調試過程中,並落在下一行),但UI從不顯示此警報。順便說一句 - 我意識到這個扔可能不是最優美的,但我甚至沒有那麼遠...... B ^)。
try {
myDBHelp.createDataBase();
} catch (IOException ioe) {
new AlertDialog.Builder(this).setCancelable(false)
.setMessage(ioe.getMessage())
.setTitle("Database Create Failed")
.setPositiveButton("Quit", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
throw new Error("Unable to create database - please try uninstall/reinstall");
}
})
.show();
使用敬酒當然是有效的,但我想知道如果我會有同樣的問題。問題是用戶界面沒有顯示我的對話框之前,它嘔吐。結果,重寫的onResume()在對話框顯示之前執行,並且在那裏失敗,因爲代碼期望數據庫。如果沒有以前的錯誤,我必須放入一個布爾值並且只測試/執行相關的代碼。一旦onResume()完成,對話框顯示。我非常確定,一旦我保護了onResume()代碼,Toast就可以工作。謝謝。 – teachableMe 2010-09-05 13:16:44