alpha 0.0.1
[DHBWCampusApp.git] / app / src / main / java / de / dhbwloe / campusapp / fragments / VorlesungsplanUpcomingDayListAdapter.java
1 package de.dhbwloe.campusapp.fragments;
2
3 import android.content.Context;
4 import android.view.LayoutInflater;
5 import android.view.View;
6 import android.view.ViewGroup;
7 import android.widget.ArrayAdapter;
8 import android.widget.LinearLayout;
9 import android.widget.ListView;
10 import android.widget.RelativeLayout;
11 import android.widget.TextView;
12
13 import java.util.ArrayList;
14
15 import de.dhbwloe.campusapp.R;
16
17 /**
18  * Created by pk910 on 20.02.2016.
19  */
20 public class VorlesungsplanUpcomingDayListAdapter extends ArrayAdapter<VorlesungsplanUpcomingDayListItem> {
21     private Context context;
22     private int layoutResourceId;
23     private ArrayList<VorlesungsplanUpcomingDayListItem> data = new ArrayList<VorlesungsplanUpcomingDayListItem>();
24
25     public VorlesungsplanUpcomingDayListAdapter(Context context, int layoutResourceId, ArrayList<VorlesungsplanUpcomingDayListItem> data) {
26         super(context, layoutResourceId, data);
27         this.layoutResourceId = layoutResourceId;
28         this.context = context;
29         this.data = data;
30     }
31
32     @Override
33     public View getView(int position, View convertView, ViewGroup parent) {
34         View row = convertView;
35         RecordHolder holder = null;
36
37         if (row == null) {
38             LayoutInflater inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
39             row = inflater.inflate(layoutResourceId, parent, false);
40
41             holder = new RecordHolder(row);
42             row.setTag(holder);
43         } else {
44             holder = (RecordHolder) row.getTag();
45         }
46
47         final VorlesungsplanUpcomingDayListAdapter that = this;
48         final VorlesungsplanUpcomingDayListItem item = data.get(position);
49
50         item.addCourseEventsToContainer(holder.container);
51         holder.cardDate.setText(item.getFormatedDate());
52
53         return row;
54     }
55
56     static class RecordHolder {
57         TextView cardDate;
58         LinearLayout container;
59
60         public RecordHolder(View view) {
61             this.cardDate = (TextView) view.findViewById(R.id.cardDate);
62             this.container = (LinearLayout) view.findViewById(R.id.cardCourses);
63         }
64     }
65 }