我想将客户端对象传递给android
上的不同活动我知道如何传递字符串但不知道传递对象。
myIntent.putExtra( “切口”,缺口); 其中nick是一个字符串
如何传递一个对象,如客户端c?
答案 0 :(得分:1)
“如果您只是传递对象,那么Parcelable就是为此设计的。它需要比使用Java的本机序列化更多的努力,但它的速度更快(我的意思是,方式更快)。”
How to send an object from one Android Activity to another using Intents?
答案 1 :(得分:0)
如果要传递对象的活动是您自己的活动,请将对象序列化为字符串并在活动中反序列化。 http://java.sun.com/developer/technicalArticles/Programming/serialization/
或者在这里回答:How to pass an object from one activity to another on Android
答案 2 :(得分:0)
仔细考虑是否需要发送对象,或者您是否真的需要从对象中获取一些数据元素。如果足以满足您的需求,发送原语或字符串可能会更简单(=更快,可能更少的错误)。
如果确实需要传递一个对象,那么你可以实现Parcelable接口,也可以将对象放入另一个类中的静态变量(List,Set,Map等类型)并以这种方式引用它。这些方法有缺点,如果你无法通过捆绑包传递所需的实际数据值,我只会推荐它们。
答案 3 :(得分:0)
警告:标准行是使用简单的原语/字符串作为名称:值对,更喜欢parcelable over serializable
参数是传递序列化对象效率低下,所以不要这样做。对于一个小物体,我不太确定这是一个真实世界的问题。除非您检测性能不佳,否则 已被认为是可读性和效率的清晰度。到目前为止,我还没有检测到任何性能问题。恕我直言,使用名称中的类的完全限定名称:值对和可序列化对象使代码可读,简单,减少错误,易于维护,并且在原型设计期间易于实现。如果检测到性能问题,或者您有时间重构代码库,那么一旦对象属性稳定,可序列化代码就可以转换为Parcelable代码。
行。我穿着我的火焰套装。