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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 490 - (show annotations) (download)
Thu Oct 29 19:27:29 2009 UTC (14 years, 6 months ago) by torben
File size: 1883 byte(s)
Reuse the existing views if possible
1 package dk.thoerup.traininfo;
2
3 import java.text.NumberFormat;
4 import java.util.List;
5
6 import android.content.Context;
7 import android.util.Log;
8 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 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 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