FileListAdapter.java :  » UnTagged » snooker-scoreboard » snooker » scoreboard » Android Open Source

Android Open Source » UnTagged » snooker scoreboard 
snooker scoreboard » snooker » scoreboard » FileListAdapter.java
package snooker.scoreboard;

import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;

import android.view.Gravity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AbsListView;
import android.widget.BaseAdapter;
import android.widget.TextView;

public class FileListAdapter extends BaseAdapter {
  
  private List<SnookerCsvFile> fileList;
  
  public FileListAdapter(String[] fileNames) {
    Arrays.sort(fileNames);
    fileList = new LinkedList<SnookerCsvFile>();
    for (String fn: fileNames) {
      String[] s = fn.replace(".csv", "").split("_match_");
      SnookerCsvFile scf = new SnookerCsvFile();
      scf.fileName = fn;
      if (s.length == 2) {
        scf.players = s[0];
        String dts = s[1];
        String[] dtsl = dts.split("_");
        if (dtsl.length == 6) {
          scf.dateTime = 
            dtsl[0] + "." +
            dtsl[1] + "." +
            dtsl[2] + " " +
            dtsl[3] + ":" +
            dtsl[4];
        } else {
          scf.dateTime = dts;
        }
      }
      fileList.add(scf);
    }
  }
  
  public int getCount() {
    return fileList.size();
  }

  public Object getItem(int position) {
    return fileList.get(position).fileName;
  }

  public long getItemId(int position) {
    return fileList.get(position).hashCode();
  }

  public View getView(int position, View convertView, ViewGroup parent) {
    SnookerCsvFile scf = fileList.get(position);
    String text = "";
    if (scf.players == null) {
      text = scf.fileName.replace(".csv", "");
    } else {
      text = scf.players + "\n   (" + scf.dateTime + ")";
    }
    AbsListView.LayoutParams lp = new AbsListView.LayoutParams(
                ViewGroup.LayoutParams.FILL_PARENT, 0);
    
    TextView textView = new TextView(parent.getContext());
    textView.setText(text);
    textView.setLayoutParams(lp);
    textView.setGravity(Gravity.CENTER_VERTICAL | Gravity.LEFT);
        textView.setPadding(4, 0, 0, 0);
        textView.setTextSize(24);
        textView.setTextColor(parent.getResources().getColor(android.R.color.black));
    return textView;
  }

  class SnookerCsvFile {
    String fileName;
    String players;
    String dateTime;
  }
}
java2s.com  | Contact Us | Privacy Policy
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.