【问题标题】:How to Save and retrieve Custom Arrailist from Shared Preference如何从共享首选项中保存和检索自定义 Arrailist
【发布时间】:2013-09-16 09:21:14
【问题描述】:

我想从 Sharedpreference 中存储和检索我的自定义对象 Arralist,我尝试过但出现编译时错误

有人可以帮忙吗?

代码:

 @Override protected void onPause() {
    List<Movie> movieList;
            super.onPause();        


                //save the movie list to preference
                SharedPreferences preferences = getPreferences(MODE_PRIVATE);           
                Editor editor = preferences.edit();
                try {
                    editor.putString("movies", org.apache.pig.impl.util.ObjectSerializer.serialize(movieList));
                } catch (IOException e) {
                    e.printStackTrace();
                }
                editor.commit();
            }
}

这是模型类:

 public class Movie implements Serializable {

        private static final long serialVersionUID = 1L;
        private String MovieName;
        private String MovieActor;
        private String MovieActress;
        private String MovieDirector;
        private String MovieImage;
        private String MovieDescription;
        private String MovieWatchLink;
        public String getMovieName() {
            return MovieName;
        }
        public void setMovieName(String movieName) {
            MovieName = movieName;
        }
        public String getMovieActor() {
            return MovieActor;
        }
        public void setMovieActor(String movieActor) {
            MovieActor = movieActor;
        }
        public String getMovieActress() {
            return MovieActress;
        }
        public void setMovieActress(String movieActress) {
            MovieActress = movieActress;
        }
        public String getMovieDirector() {
            return MovieDirector;
        }
        public void setMovieDirector(String movieDirector) {
            MovieDirector = movieDirector;
        }
        public String getMovieImage() {
            return MovieImage;
        }
        public void setMovieImage(String movieImage) {
            MovieImage = movieImage;
        }
        public String getMovieDescription() {
            return MovieDescription;
        }
        public void setMovieDescription(String movieDescription) {
            MovieDescription = movieDescription;
        }
        public String getMovieWatchLink() {
            return MovieWatchLink;
        }
        public void setMovieWatchLink(String movieWatchLink) {
            MovieWatchLink = movieWatchLink;
        }

编译时错误:

The method serialize(Serializable) in the type ObjectSerializer is not applicable for the 
arguments (List<Movie>)

【问题讨论】:

标签: android android-layout android-listview sharedpreferences


【解决方案1】:

List 没有实现 Serializable 接口。 (电影有)。 你可以试试 ArrayList(这里不能试试)

【讨论】:

  • 错误状态是编译器错误而不是运行时错误。
  • 你可以试试ArrayList而不是List接口。
  • @Sunny,确实错过了编译时间。
【解决方案2】:

ArrayList&lt;Movie&gt; movieList代替List&lt;Movie&gt; movieList;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-09-10
    • 1970-01-01
    • 2017-08-19
    • 2013-10-18
    • 2017-02-26
    • 2019-03-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多