Передача Arraylist между действиями? Использование Parcelable - PullRequest
1 голос
/ 12 апреля 2011

РЕДАКТИРОВАТЬ: Я значительно обновил свой вопрос и теперь использую Parcelable в качестве моего метода.

Я пытаюсь передать ArrayList из одного действия в другое.Я перечитываю и, похоже, не могу найти никаких ответов на мою проблему.

У меня есть ArrayList<SearchList>, который implements Parcelable SearchList имеет следующий код ...

  public class SearchList implements Parcelable {
private String title;
  private String description;
  private String link;
  public SearchList(String name, String phone, String mail) {
          super();
          this.title = name;
          this.description = phone;
          this.link = mail;
  }
  public SearchList(Parcel source){
      /*
       * Reconstruct from the Parcel
       */
      title = source.readString();
      description = source.readString();
      link = source.readString();
}
  public String gettitle() {
          return title;
  }
  public void setTitle(String title) {
          this.title = title;
  }
  public String getDescription() {
          return description;
  }
  public void setDescription(String description) {
          this.description = description;
  }
  public String getLink() {
          return link;
  }
  public void setLink(String link) {
          this.link = link;
  }

public int describeContents() {
    // TODO Auto-generated method stub
    return 0;
}

public void writeToParcel(Parcel dest, int flags) {
      dest.writeString(title);
      dest.writeString(description);
      dest.writeString(link);

}

 public static final Creator<SearchList> CREATOR = new Creator<SearchList>() {
        public SearchList createFromParcel(Parcel source) {
            return new SearchList(source);
        }
        public SearchList[] newArray(int size) {
            return new SearchList[size];
        }
    };
  }

Однако, когда я пытаюсь сделать ...

 List<SearchList> listOfResults = new ArrayList<SearchList>();
 intent.putParcelableArrayListExtra("results", listOfResults);

Я получаю not applicable for type (String, List<SearchList> почему?

Ответы [ 3 ]

1 голос
/ 12 апреля 2011

Не могли бы вы использовать все строковые значения и изменить с bundle.putSerializable() на bundle.putStringArrayList("key", ArrayList<String>_object)

1 голос
/ 12 апреля 2011

Аналогичный вопрос был задан здесь .Надеюсь, это поможет вам!

0 голосов
/ 12 апреля 2011

Вы можете использовать SQLite в качестве альтернативы.Для передачи данных из одного занятия в другое.Здесь ссылка .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...