我目前正在构建一个应用程序来检索远程服务器的信息。收到的数据是JSON,我使用下面的类构建数据列表:
public class RedditData {
private RedditTopic data;
public RedditTopic getData() {
return data;
}
}
和RedditTopic类定义如下:
public final class RedditTopic {
private static final String TAG = RedditTopic.class.getSimpleName();
private String author;
private String thumbnail;
private String title;
private String num_comments;
private long created_utc;
private String data;
private String name;
public RedditTopic(){};
public String getData() {
return data;
}
public String getAuthor() {
return author;
}
public String getThumbnail(){
return thumbnail;
}
public String getTitle(){
return title;
}
public String getComments(){
return num_comments + " comments";
}
public long getCreated_utc(){
return created_utc;
}
public String getRedditName(){
return name;
}
}
这两个类都用于将JSON转换为Object格式的数据。
我不想真正改变它们以使它们成为Parceable以避免影响JSON的提取。
我已添加:
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
Log.d(TAG, ">>>>>>>>>>>>>>>>>>>>>>>> SAVE");
savedInstanceState.putParcelableArrayList("RedditList", myListOfData );
super.onSaveInstanceState(savedInstanceState);
}
@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
Log.d(TAG, ">>>>>>>>>>>>>>>>>>>>>>>> RESTORE");
List<RedditData> myListOfData = savedInstanceState.getParcelableArrayList("RedditList");
}
Android抱怨,因为我需要在我的类RedditData中实现Parceable,我也可能在RedditTopic类中也是如此,因为RedditData返回了一个RedditTopic列表。
有更好的方法吗?保留列表,不需要Parceable选项。
我没有字符串列表,它是一个对象列表。
有什么想法吗?
此致
答案 0 :(得分:0)
让你的模型对象变得可以理解。
有一个很好的扩展,https://plugins.jetbrains.com/plugin/7332-android-parcelable-code-generator将为您的类生成必要的可分配方法。
我强烈推荐它。