/[projects]/android/TrainInfo/src/dk/thoerup/traininfo/DepartureListAdapter.java
ViewVC logotype

Contents of /android/TrainInfo/src/dk/thoerup/traininfo/DepartureListAdapter.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 332 - (show annotations) (download)
Tue Sep 22 13:57:36 2009 UTC (14 years, 7 months ago) by torben
File size: 3429 byte(s)
Better train icon detection
1 package dk.thoerup.traininfo;
2
3 import java.util.List;
4
5 import android.content.Context;
6 import android.view.LayoutInflater;
7 import android.view.View;
8 import android.view.ViewGroup;
9 import android.widget.BaseAdapter;
10 import android.widget.ImageView;
11 import android.widget.TextView;
12
13 public class DepartureListAdapter extends BaseAdapter {
14
15 private List<DepartureBean> departures;
16 LayoutInflater inflater;
17 Context context;
18 public DepartureListAdapter(Context context) {
19 super();
20 this.context = context;
21
22 inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
23 }
24
25 public void setDepartures(List<DepartureBean> departures) {
26 this.departures = departures;
27 notifyDataSetChanged();
28 }
29
30 @Override
31 public int getCount() {
32 if (departures != null)
33 return departures.size();
34 else
35 return 0;
36 }
37
38 public DepartureBean getDeparture(int position) {
39 return departures.get(position);
40 }
41
42 @Override
43 public Object getItem(int position) {
44 return null;
45 }
46
47 @Override
48 public long getItemId(int position) {
49 return position;
50 }
51
52 @Override
53 public View getView(int position, View convertView, ViewGroup parent) {
54 DepartureBean station = departures.get(position);
55
56 View root = inflater.inflate(R.layout.departurerow , parent, false);
57
58 ((TextView) root.findViewById(R.id.Time)).setText(station.getTime());
59 ((TextView) root.findViewById(R.id.Destination)).setText(station.getDestination());
60
61 if (station.getStatus().length() > 0 || station.getNote().length() > 0) {
62 ImageView image = (ImageView) root.findViewById(R.id.InfoIcon);
63 image.setImageResource(R.drawable.info20);
64 }
65
66 ImageView typeIcon = (ImageView) root.findViewById(R.id.TypeIcon);
67 String trainNumber = station.getTrainNumber() + " "; //Ugly hack: Append space do simplify icon selection code
68
69
70 if ( trainNumber.substring(0, 2).equalsIgnoreCase("ra")) { //ra = regionaltog arriva
71 typeIcon.setImageResource(R.drawable.retog);
72 } else if ( trainNumber.substring(0, 2).equalsIgnoreCase("re")) {
73 typeIcon.setImageResource(R.drawable.retog);
74 } else if ( trainNumber.substring(0,1).equalsIgnoreCase("l")) {
75 typeIcon.setImageResource(R.drawable.lyntog);
76 } else if ( trainNumber.substring(0,2).equalsIgnoreCase("ic")) {
77 typeIcon.setImageResource(R.drawable.ictog);
78 } else if ( trainNumber.substring(0,2).equalsIgnoreCase("pp")) {
79 typeIcon.setImageResource(R.drawable.pptog);
80 } else if ( trainNumber.equalsIgnoreCase("a ") ) {
81 typeIcon.setImageResource(R.drawable.stog); //S-Tog: A banen
82 } else if ( trainNumber.equalsIgnoreCase("b ") ) {
83 typeIcon.setImageResource(R.drawable.stog); //S-Tog:B banen
84 } else if ( trainNumber.equalsIgnoreCase("bx ") ) {
85 typeIcon.setImageResource(R.drawable.stog); //S-Tog:Bx banen
86 } else if ( trainNumber.equalsIgnoreCase("c ") ) {
87 typeIcon.setImageResource(R.drawable.stog); //S-Tog:C banen
88 } else if ( trainNumber.equalsIgnoreCase("e ") ) {
89 typeIcon.setImageResource(R.drawable.stog); //S-Tog:E banen
90 } else if ( trainNumber.equalsIgnoreCase("f ") ) {
91 typeIcon.setImageResource(R.drawable.stog); //S-Tog:F banen
92 } else if ( trainNumber.equalsIgnoreCase("h ") ) {
93 typeIcon.setImageResource(R.drawable.stog); //S-Tog:H banen
94 }
95 //Mangler: ØR=Øresund, SJ=Sverige?, EC,
96
97
98
99 return root;
100 }
101
102 }

  ViewVC Help
Powered by ViewVC 1.1.20