Listview data is not refreshing after array list data and adapter data changed.
My code :
listView = (ListView) detailsView.findViewById(R.id.settings_fragment_list);
ticketCommentsPriorityData.clear();
for (int i = 0; i <mTicketData.size(); i++) {
totalTicketsData =mTicketData.get(i).getTotalTicketsData();
for (int j = 0; j <mTicketData.get(i).getTotalTicketsData().size(); j++) {
if (ticketID.equalsIgnoreCase(mTicketData.get(i).getTotalTicketsData().get(j).getTicketID())) {
TicketCommentsPriorityData commentsPriorityData = new TicketCommentsPriorityData();
String comment =mTicketData.get(i)
.getTotalTicketsData().get(j).getComments();
String priority =mTicketData.get(i)
.getTotalTicketsData().get(j).getPriority();
commentsPriorityData.setComments(comment);
commentsPriorityData.setPriority(priority);
ticketCommentsPriorityData.add(commentsPriorityData);
}
}
}
}
if (ticketCommentsPriorityData != null
&& ticketCommentsPriorityData.size() > 0) {
detailListAdapter = new TicketDetailListAdapter(getActivity(),
R.layout.ticket_list_items, ticketCommentsPriorityData);
listView.setAdapter(detailListAdapter);
}
Adapter class
public class TicketDetailListAdapter extends ArrayAdapter<TicketCommentsPriorityData> {
Context context;
ArrayList<TicketCommentsPriorityData> ticketData;
LayoutInflater layoutInflater;
int layoutResourceID;
public TicketDetailListAdapter(Context context,int layoutResourceID,
ArrayList<TicketCommentsPriorityData> ticketData) {
// TODO Auto-generated constructor stub
super(context, layoutResourceID, ticketData);
this.context = context;
this.ticketData = ticketData;
this.layoutResourceID = layoutResourceID;
layoutInflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ViewHolder viewHolder = null;
if (convertView == null) {
viewHolder = new ViewHolder();
convertView = layoutInflater.inflate(layoutResourceID,
parent, false);
viewHolder.ticketID = (TextView) convertView
.findViewById(R.id.ticket_id);
viewHolder.ticketDate = (TextView) convertView
.findViewById(R.id.ticket_date);
convertView.setTag(viewHolder);
} else {
viewHolder = (ViewHolder) convertView.getTag();
}
viewHolder.ticketDate.setText(ticketData.get(position).getComments());
viewHolder.ticketID.setText(ticketData.get(position).getPriority());
return convertView;
}
class ViewHolder {
TextView ticketID;
TextView ticketDate;
}
}
my problem was When I tap on parent list item this listview executes and it display details of parent list item.but here if I tap on first item and it's getting first item details and it's displaying correctly.But,if I tap on another items it's displaying always what ever item details comes first into details list it always displaying that data only.
Any one give me a solution.
0 comments:
Post a Comment