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

Annotation of /android/TrainInfo/src/dk/thoerup/traininfo/StationListAdapter.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 490 - (hide annotations) (download)
Thu Oct 29 19:27:29 2009 UTC (14 years, 7 months ago) by torben
File size: 1883 byte(s)
Reuse the existing views if possible
1 torben 237 package dk.thoerup.traininfo;
2    
3     import java.text.NumberFormat;
4     import java.util.List;
5    
6     import android.content.Context;
7 torben 490 import android.util.Log;
8 torben 237 import android.view.LayoutInflater;
9     import android.view.View;
10     import android.view.ViewGroup;
11     import android.widget.BaseAdapter;
12     import android.widget.TextView;
13    
14     public class StationListAdapter extends BaseAdapter {
15     LayoutInflater inflater;
16    
17     List<StationBean> stations;
18     Context context;
19     NumberFormat number = NumberFormat.getNumberInstance();
20    
21     public StationListAdapter(Context context) {
22     super();
23     this.context = context;
24    
25     inflater = (LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
26     number.setMaximumFractionDigits(1);
27     number.setMinimumFractionDigits(1);
28     }
29    
30     @Override
31     public int getCount() {
32     if (stations != null)
33     return stations.size();
34     else
35     return 0;
36     }
37    
38     @Override
39     public Object getItem(int position) {
40     return null;
41     }
42    
43     public StationBean getStation(int position) {
44     return stations.get(position);
45     }
46    
47     @Override
48     public long getItemId(int position) {
49     return position;
50     }
51    
52     public void setStations(List<StationBean> stations) {
53     this.stations = stations;
54     notifyDataSetChanged();
55     }
56    
57     @Override
58     public View getView(int position, View convertView, ViewGroup parent) {
59     StationBean station = stations.get(position);
60    
61 torben 490 View root;
62     if (convertView == null || convertView.getId() != R.id.StationRow) {
63     root = inflater.inflate(R.layout.stationrow , parent, false);
64     } else {
65     root = convertView;
66     }
67    
68 torben 237 TextView tview = (TextView) root.findViewById(R.id.stationName);
69     tview.setText(station.getName());
70    
71     tview = (TextView) root.findViewById(R.id.stationDistance);
72     tview.setText("Distance: " + number.format( (double)station.getDistance()/1000.0) + " km.");
73    
74     return root;
75     }
76     }

  ViewVC Help
Powered by ViewVC 1.1.20