我的应用程序有一个客户端列表(仅显示名称和年龄),我希望能够编辑/添加有关它们的更多信息,这些信息在列表中不可见。 因此,每当我点击一个客户端时,我想开始第二个活动,其中包含有关他的所有信息。
我可以使用这个意图吗?我可以一次性传递一个完整的对象(客户端)吗?
我已经查看了这两个主题,但我还没找到答案:
How to exchange data (objects) between different Android Activities?
How do I pass data between Activities in Android application?
提前致谢。
答案 0 :(得分:1)
看看这个答案:How to pass an object from one activity to another on Android
//to pass :
intent.putExtra("MyClass", obj);
// to retrieve object in second Activity
getIntent().getSerializableExtra("MyClass");
答案 1 :(得分:0)
我建议您考虑将这些保存在SharedPreferences文件中。构建单独的AppUtil类并添加功能以在共享首选项中保存数据以及能够检索所述数据
如果您为客户端存储了大量信息,那么您应该将SQLite视为数据库存储。
答案 2 :(得分:0)
更实际的方法是创建一个类来保存在活动之间需要更改的每个对象。像那样:
public class MyHolderObjects {
public static MyObjectType mObject;
}
在开始新活动之前(或者你要使用它的任何东西),在MyHolderObjects中实例化(创建)对象。并在任何你需要的地方使用它:)。我更喜欢这种方法,而不是序列化对象。