title: Custom List Adapter not Binding values to TextView
body: <p>I'm trying to create an android list using a custom adapter and the following XML row layout.  I have implemented the following classes however when I run it onto my emulator the "android:id="@+id/firstLine" TextView does not appear to be setting the text!  The "id/secondLine" Text View does receive the correct text!</p>
  
  <p>List Row Item XML Layout:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="fill_parent"
      android:layout_height="?android:attr/listPreferredItemHeight"
      android:padding="6dip" &gt;
  
      &lt;ImageView
          android:id="@+id/icon"
          android:layout_width="wrap_content"
          android:layout_height="fill_parent"
          android:layout_alignParentBottom="true"
          android:layout_alignParentTop="true"
          android:layout_marginRight="6dip"
          android:contentDescription="@string/TODO"
          android:src="@drawable/ic_launcher" /&gt;
  
      &lt;TextView
          android:id="@+id/secondLine"
          android:layout_width="fill_parent"
          android:layout_height="26dip"
          android:layout_alignParentBottom="true"
          android:layout_alignParentRight="true"
          android:layout_toRightOf="@id/icon"
          android:ellipsize="marquee"
          android:singleLine="true"
          android:text="@string/purchase_date"
          android:textSize="12sp" /&gt;
  
  ///  THIS IS THE TextView that's not working
      &lt;TextView
          android:id="@+id/firstLine"
          android:layout_width="fill_parent"
          android:layout_height="wrap_content"
          android:layout_above="@id/secondLine"
          android:layout_alignParentRight="true"
          android:layout_alignParentTop="true"
          android:layout_alignWithParentIfMissing="true"
          android:layout_toRightOf="@id/icon"
          android:gravity="center_vertical"
          android:text="@string/home_depot"
          android:textSize="16sp" /&gt;
  
  &lt;/RelativeLayout&gt; 
  </code></pre>
  
  <p>Adapter Class:    </p>
  
  <pre><code>    public class SimpleAdapter extends BaseAdapter {
      private Activity activity;
      private ArrayList&lt;HashMap&lt;String, String&gt;&gt; data;
      private static LayoutInflater inflater=null;
      //public ImageLoader imageLoader;
  
      public SimpleAdapter(Activity a, ArrayList&lt;HashMap&lt;String, String&gt;&gt; d){
          activity = a;
          data = d;
          inflater = (LayoutInflater)activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE);  
      }
      @Override
      public int getCount() {
          return data.size();
      }
      @Override
      public Object getItem(int position) {
          return position;
      }
      @Override
      public long getItemId(int position) {
          return position;
      }
      @Override
      public View getView(int position, View convertView, ViewGroup parent) {
          View vi=convertView;
          if(convertView==null)
              vi = inflater.inflate(R.layout.list_item, null);
  
          TextView purchaseDate = (TextView)vi.findViewById(R.id.secondLine);
          TextView seller = (TextView)vi.findViewById(R.id.firstLine);
  
  
          HashMap&lt;String, String&gt; employee = new HashMap&lt;String, String&gt;();
          employee = data.get(position);
  
    //  Should this not be setting the text for the "seller" TextView?
          purchaseDate.setText(employee.get(HistoryListView.KEY_PURCHASE_DATE));
          seller.setText(employee.get(HistoryListView.KEY_SELLER));
  
          return vi;
      }
  }
  </code></pre>
  
  <p>List Activity:</p>
  
  <pre><code>public class HistoryListView extends Activity {
  
      static final String KEY_SELLER="seller";
      static final String KEY_PURCHASE_DATE="purchase_date";
      static final String KEY_SALE_AMMOUNT="sale_ammount";
      static final String PURCHASE_DATE="Purchase Date: ";
      static final String USD="$ ";
  
      ListView list;
      SimpleAdapter adapter;
      public String[] sellerList = {"Home Depot","7 Eleven","Costco","Outback Steak House","Philz Coffee"};
      public String[] purchaseDateList={"1/12/13", "1/23/13", "2/16/13", "2/17/13", "2/18/13"};
      public String[] saleAmmountList={"1023.10","243.98","107.54","45.88","21.99"};
  
      @Override
      public void onCreate(Bundle savedInstanceState){
          super.onCreate(savedInstanceState);
          setContentView(R.layout.history_list);
          ArrayList&lt;HashMap&lt;String,String&gt;&gt; expenseList=new ArrayList&lt;HashMap&lt;String, String&gt;&gt;();
          Intent intent = getIntent();
  
          for(int i=0; i&lt;5; i++){
              HashMap&lt;String, String&gt; map = new HashMap&lt;String, String&gt;();
              map.put(KEY_SELLER, sellerList[i]);
              map.put(KEY_PURCHASE_DATE, PURCHASE_DATE+purchaseDateList[i]);
              //map.put(KEY_SALE_AMMOUNT, saleAmmountList[i]);
  
              expenseList.add(map);
          }
  
          ListView list=(ListView)findViewById(R.id.list);
  
          adapter=new SimpleAdapter(this, expenseList);
          list.setAdapter(adapter);
      }//END onCreate
  }//END HistoryListView
  </code></pre>