2012-10-19 121 views
0

我想將一個活動的對象傳遞給另一個,但我無法做到這一點。問題是日食是把我想通過紅色子句的對象。這是我使用的代碼:獲取從一個活動傳遞對象到另一個活動的難度

DatabaseHandler1 db1 = new DatabaseHandler1(SecureMessagesActivity.this); 
    Intent intent = new Intent(SecureMessagesActivity.this,ShowTheFoldersInSdCard.class); 
    intent.putExtra("id",(int)id); 
    intent.putExtra("MyClassObject", db1); 

在最後一行,它顯示提前db1.Please help.Thanks問題。

+0

您無法通過意向發送SQLiteOpenHelper。您可以在第二個活動中創建它。或者在Application類中創建它。 – Agata

+0

實際上,我已經在Application類中創建了它,並且想將其對象發送給其他活動。 – user1726619

+0

在其他活動中創建SqliteOpenHelper的對象並在那裏使用。 – Sumant

回答

1

通過意圖僅發送ID這樣

Intent intent = new Intent(SecureMessagesActivity.this,ShowTheFoldersInSdCard.class); 
intent.putExtra("id",(int)id); 

而在另一項活動創造這樣

DatabaseHandler1 db1 = new DatabaseHandler1(SecondActivity.this); 

輔助對象,如果你想通過整個應用程序讓你的助手只有一個實例,我認爲你應該創建類延伸Application並創建像這樣的助手對象

DatabaseHandler1 db1 = new DatabaseHandler1(YourApplicationClass.this); 

你必須使它publicstatic。然後在每個活動中,您都可以這樣稱呼它

YourApplicationClass.db1.doSomething(); 
相關問題