我有一个用来与各种事物互动的对象。对象本身在我的第一个活动中初始化,并用于所有后续活动。什么是使其对所有活动“公开”的最佳方式?
答案 0 :(得分:12)
创建一个扩展Application的类并在那里保存实例。
class MyApp extends Application{
private Object obj;
public Object getObject(){
return obj;
}
}
然后在你的活动中
MyApp ma = (MyApp)getApplicationContext();
Object o = ma.getObject();
您可以在Android开发者网站上阅读有关Application类的更多信息:http://developer.android.com/reference/android/app/Application.html
答案 1 :(得分:1)
public class MyStorage {
private static MyStorage ourInstance = new MyStorage();
public static MyStorage getInstance() {
return ourInstance;
}
private MyStorage() {
}
public HashMap<String,Object> storage=new HashMap<String, Object>();
}
//put data
MyStorage.getInstance().storage.put("mykey", obj);
//get data
Object obj=MyStorage.getInstance().storage.get("mykey");