如何在不使用意图的情况下将对象从一项活动传递给另一项活动
我是开发Android的新手。我有一个问题。如何将对象从一个活动传递到另一个活动而不使用Intent.Can我可以通过Interface实现,如果是这样的话如何才能请我怎么办?如何在不使用意图的情况下将对象从一项活动传递给另一项活动
将数据保存在单例类模型中并从另一个类获取相同的对象活动 像这样创建
public class SingletonModel {
private static SingletonModel instance;
public String textData = ""
public synchronized static SingletonModel getSingletonModel() {
if (instance == null) {
instance = new SingletonModel();
}
return instance;
}
private void SingletonModel(){}
}
从第一次活动的一类做类似这样的
SingletonModel.getSingletonModel().textData ="Your data goes here";
从次活动做这样
textView.setText(SingletonModel.getSingletonModel().textData);
您的单例不是线程安全的。 .. – WarrenFaith 2014-12-03 10:22:44
也textData是私人的,不能通过'.'运营商 – Blackbelt 2014-12-03 10:25:13
编辑完成谢谢。 – Nitesh 2014-12-03 10:27:34
我觉得你有2个选项
- 在内存中,将其保存到某个地方,所有的活动可以达到,或使其静态的。这不是好主意,但
- 它保存到磁盘,并使用它,比如共享偏好
- 您可以将其存储在SharedPreferences然后在另一个活动 恢复。
- 你可以将它存储在SQLite中,然后在另一个Activity中恢复它。
- 您可以使用静态链接
- 您可以使用服务
如果数据应该仍然存在,使用的文件。如果没有,请使用单例。
最大的问题:为什么不使用意图? “通行证”表明一项活动从另一项开始。那么为什么不使用你必须创建的意图来开始第二个活动呢? – WarrenFaith 2014-12-03 10:19:35
为什么不在意图上使用putExtra? :O – cgew85 2014-12-03 10:21:56
我的主要目的是,http://stackoverflow.com/questions/27173535/android-listview-item-edit-operation – 2014-12-03 10:27:02