【问题标题】:Send list of objects which contain other custom objects from one activity to another将包含其他自定义对象的对象列表从一个活动发送到另一个活动
【发布时间】:2014-12-05 08:15:37
【问题描述】:

这是我的班级,我想将其列表发送到另一个活动。

public class PostComments {

    public User from;

    public String message;

    public String createdTime;

    public String like_count;

    public Boolean user_likes;
}

这是 User 类,其对象用于 PostComments 类。

public class User extends BaseEntity{
    public String photoUrl;
}

这是 BaseEntity 类

public class BaseEntity {
    public String Id;

    public String Name;
}

如何将此对象从一个活动发送到另一个活动?

PostComments[] myData = ClickedPost.comments.data;
Intent PostCommentsActivity = new Intent(getActivity() , PostCommentsActivity.class);
getActivity().startActivity(PostCommentsActivity);

以上是打开 PostCommentsActivity 的代码,我想将 myData 对象发送到 PostCommentsActivity。

我已经对这个问题进行了很多搜索,但每个问题和教程都解释说,仅针对包含简单字符串、int 或布尔变量的类。

【问题讨论】:

  • 为什么要发送这么多数据?为什么不直接发送一个对象的 ID,然后在目的地检索/构造该对象?
  • 其他方法都失败了,您可以随时序列化对象并在目的地反序列化。
  • 我只想以任何方式在第二个活动中显示我的这个 cmets 数组。你能提供一些我该怎么做的链接吗?

标签: android android-activity parcelable serializable


【解决方案1】:

让我们试试吧:

ArrayList<PostComments> comments = new ArrayList<MainActivity.PostComments>();
comments.add(...) //Add your list data here
Intent intent = new Intent(getActivity() , PostCommentsActivity.class);
intent.putExtra("list_comments", comments);
getActivity().startActivity(intent);

并将您的 PostComments 类编辑为:

public class PostComments implements Serializable {

        public String message;

        public String createdTime;

        public String like_count;

        public Boolean user_likes;
    }

在 PostCommentsActivity 中,获取 bundle 以获取列表 cmets。

【讨论】:

  • PostComments[] myData = ClickedPost.cmets.data;
  • 我没有arraylist,它是一个来自服务器的简单数组。如何将其更改为 ArrayList?
  • 这可能行不通。 OP 的所有类都必须是可序列化的才能正常工作
  • @Yawar 如果非要问这个问题,那我建议你先学java
  • @TruongPhuQuoc 当您发送对象列表或数组时,它们中的每一个都必须是可序列化的 - 我知道这一点,但您需要将其包含在您的答案中。
猜你喜欢
  • 1970-01-01
  • 2012-08-04
  • 2014-09-09
  • 1970-01-01
  • 1970-01-01
  • 2013-01-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多