So I have spend almost 3 hours searching for an answer on how to set value to my spinner using ArrayAdapter of POJO.
Here is My POJO :
public class ArchiveIssueModel implements Serializable {
private String Issues;
private String id;
private String Picture;
public ArchiveIssueModel(String issues, String id, String picture) {
Issues = issues;
this.id = id;
Picture = picture;
}
public ArchiveIssueModel() {
}
public ArchiveIssueModel(String issue) {
this.Issues = issue;
}
public String getIssues() {
return Issues;
}
public void setIssues(String issues) {
Issues = issues;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getPicture() {
return Picture;
}
public void setPicture(String picture) {
Picture = picture;
}
//to display object as a string in spinner
@Override
public String toString() {
return Issues;
}
@Override
public boolean equals(Object obj) {
if(obj instanceof ArchiveIssueModel){
ArchiveIssueModel c = (ArchiveIssueModel )obj;
if(c.getIssues().equals(Issues) && c.getId()== id ) return true;
}
return false;
}
I know how to set value using and ArrayAdapter of String. I have done it like this and that's very easy to understand.
ArrayAdapter<String> spinnerArrayAdapter =
new ArrayAdapter<>(this,
android.R.layout.simple_spinner_item, yearList);
spinnerArrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
sp_year.setAdapter(spinnerArrayAdapter);
sp_year.setSelection(spinnerArrayAdapter.getPosition(year));
But I can not figure out how to set a value to my spinner in case of ArrayAdapter o ArchiveIssueModel(i.e My POJO). Any help would be appreciated. TY :)