2017-07-02 46 views
0

我有一個if語句來檢查sqlite數據庫中是否有任何行。如果數據庫中存在行,則啓用一些按鈕,否則將禁用按鈕。每次顯示活動時運行一個方法

像這樣

DBHandler dbHandler = new DBHandler(this, null, null, 1); 
    SQLiteDatabase db = dbHandler.getWritableDatabase(); 
    String count = "SELECT count(*) FROM clients"; 
    Cursor mcursor = db.rawQuery(count, null); 
    mcursor.moveToFirst(); 
    int icount = mcursor.getInt(0); 
    if(icount == 0) 
    { 
     btnViewClient.setEnabled(false); 
     btnViewAppt.setEnabled(false); 
     btnAddAppt.setEnabled(false); 
     btnViewBill.setEnabled(false); 
     btnAddBill.setEnabled(false); 
    } 
    else 
    { 
     btnViewClient.setEnabled(true); 
     btnViewAppt.setEnabled(true); 
     btnAddAppt.setEnabled(true); 
     btnViewBill.setEnabled(true); 
     btnAddBill.setEnabled(true); 
    } 

這是在我的onCreate方法。

所以現在如果用戶向sqlite數據庫添加一行並點擊返回按鈕返回到主菜單。我如何再次運行此代碼並啓用按鈕?我需要在每次顯示活動時運行此代碼,但我不想完成該活動,因爲那樣您就無法使用後退按鈕返回到該活動。

回答

2

您可能想了解更多有關Activity Lifecycle的信息。

特別是,您需要使用onResume方法 - 每當您的應用程序返回到您的Activity時,它都會被調用。

所以,只要把你的代碼放在這個方法上面。

+0

我真的很尷尬,我忘了這存在....感謝它已經完成... – Shawnzey

相關問題