listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> adapterView, View view, int i, long l) {
Intent intent = new Intent(view.getContext(), ComplaintDetail.class);
intent.putExtra("ticket", ticket);
startActivity(intent);
}
});
Объект, который я упомянул в билете по назначению, - это объект, который вы получаете от fireabse, и вам нужно сделать объект доступным для анализа, чтобы иметь возможность отправить его в другое действие. Поэтому убедитесь, что он сделан доступным.
Ниже приведен класс модели с реализуемым интерфейсом: -
public class Ticket implements Parcelable {
private String ticketCategory;
private String name;
private String complaintID;
private String subcategory;
private String priority;
private String status;
private String comments;
private String cannedReply;
public Ticket() {
}
public Ticket(String ticketCategory, String subcategory, String priority, String status, String comments, String cannedReply) {
this.ticketCategory = ticketCategory;
// this.Name = Name;
this.subcategory = subcategory;
this.priority = priority;
this.status = status;
this.comments = comments;
this.cannedReply = cannedReply;
}
public String getTicketCategory() {
return ticketCategory;
}
public void setTicketCategory(String ticketCategory) {
this.ticketCategory = ticketCategory;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getComplaintID() {
return complaintID;
}
public void setComplaintID(String complaintID) {
this.complaintID = complaintID;
}
public String getSubcategory() {
return subcategory;
}
public void setSubcategory(String subcategory) {
this.subcategory = subcategory;
}
public String getPriority() {
return priority;
}
public void setPriority(String priority) {
this.priority = priority;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public String getComments() {
return comments;
}
public void setComments(String comments) {
this.comments = comments;
}
public String getCannedReply() {
return cannedReply;
}
public void setCannedReply(String cannedReply) {
this.cannedReply = cannedReply;
}
@Override
public int describeContents() {
return 0;
}
@Override
public void writeToParcel(Parcel dest, int flags) {
dest.writeString(this.ticketCategory);
dest.writeString(this.name);
dest.writeString(this.complaintID);
dest.writeString(this.subcategory);
dest.writeString(this.priority);
dest.writeString(this.status);
dest.writeString(this.comments);
dest.writeString(this.cannedReply);
}
protected Ticket(Parcel in) {
this.ticketCategory = in.readString();
this.name = in.readString();
this.complaintID = in.readString();
this.subcategory = in.readString();
this.priority = in.readString();
this.status = in.readString();
this.comments = in.readString();
this.cannedReply = in.readString();
}
public static final Parcelable.Creator<Ticket> CREATOR = new Parcelable.Creator<Ticket>() {
@Override
public Ticket createFromParcel(Parcel source) {
return new Ticket(source);
}
@Override
public Ticket[] newArray(int size) {
return new Ticket[size];
}
};
}
Итак, у меня есть методы set и get и я реализовал parceable, т.е. сделал класс доступным, чтобы вы могли отправлять весь объект. Теперь в другой деятельности, где вы будете получать, вы можете просто использовать методы get, как показано ниже
Сначала получите намерение через getIntent () в onCreate и объявите объект Ticket.
ticket = getIntent().getParcelableExtra("Ticket");
А там, где вам нужен объект, вы можете напрямую получить к нему доступ, как показано ниже
ticket.getSubcategory();
ticket.getTicketCategory();
ticket.getStatus();
Так вот, спросите меня, не получили ли вы что-нибудь и не работает ли оно.