title: ArrayAdapter number of elements in data set is zero
body: <p>I'm trying to build a list with a customized view for the rows, each row will consist of an image view and two text views.</p>
  
  <p>in order to do so i extended the ArrayAdapter class (called PostersArrayAdapter) and overridden the getView() method in order to make the right connection between the data and the row layout.</p>
  
  <p>However, when i try to construct a PostersArrayAdapter with an array of PosterData class (my implementation) with some data the result is that the adapter is empty, means getCount() returns zero and the listView is empty.</p>
  
  <p>can anyone suggest what am i doing wrong?
  i'm relying on a code that i found here - <a href="http://www.vogella.de/articles/AndroidListView/article.html">http://www.vogella.de/articles/AndroidListView/article.html</a></p>
  
  <p>Thank you very much!</p>
  
  <p>here is the relevant code: (PosterData class is just a class with two string fields)</p>
  
  <pre><code>public class PostersListActivity extends ListActivity {
  final private int NUM_OF_PICS = 2;
  private ContentGetter   cg;
  private PosterData[]    posters;
  private ListView        listView;
  
  @Override
  public void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.main);
      cg = new ContentGetter(NUM_OF_PICS);
      try 
      {
          posters = cg.parseIndexFile();
          int res = cg.DownloadPosterPics(1);
  
      } 
      catch (ClientProtocolException e) 
      {
          e.printStackTrace();
      } 
      catch (IOException e) 
      {
          e.printStackTrace();
      }
  
      // Use our own list adapter
      listView = (ListView)findViewById(android.R.id.list);
      //listView.setAdapter((ListAdapter) new ArrayAdapter&lt;String&gt;(this,R.layout.list_item,R.id.title,titles));
      PostersArrayAdapter postersAdapter = new PostersArrayAdapter(this, posters);
      Log.d("PostersListActivity.onCreate()","Number of elementes in the data set of the adapter is " + postersAdapter.getCount());
      listView.setAdapter(postersAdapter);
  }
  
  
  public class PostersArrayAdapter extends ArrayAdapter&lt;PosterData&gt; {
      private final Activity context;
      private final PosterData[] posters;
  
      public PostersArrayAdapter(Activity context, PosterData[] posters) {
          super(context, R.layout.list_item);
          this.context = context;
          this.posters = posters;
      }
  
      // static to save the reference to the outer class and to avoid access to
      // any members of the containing class
      class ViewHolder {
          public ImageView logo;
          public TextView  title;
          public TextView  names;
      }
  
      @Override
      public View getView(int position, View convertView, ViewGroup parent) {
          // ViewHolder will buffer the assess to the individual fields of the row
          // layout
  
          ViewHolder holder;
          // Recycle existing view if passed as parameter
          // This will save memory and time on Android
          // This only works if the base layout for all classes are the same
          View rowView = convertView;
          if (rowView == null) 
          {
              LayoutInflater inflater = context.getLayoutInflater();
              rowView = inflater.inflate(R.layout.list_item, null, true);
              holder = new ViewHolder();
              holder.title = (TextView) rowView.findViewById(R.id.title);
              holder.names = (TextView) rowView.findViewById(R.id.names);
              holder.logo = (ImageView) rowView.findViewById(R.id.logo);
              rowView.setTag(holder);
          } 
          else 
          {
              holder = (ViewHolder) rowView.getTag();
          }
  
          holder.title.setText(posters[position].getTitle());
          holder.names.setText(posters[position].getNames());
          holder.logo.setImageResource(R.drawable.icon);
  
          return rowView;
      }
  }   
  }
  </code></pre>
  
  <p>Here is the list view layout i'm using:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:orientation="vertical"
      android:layout_width="fill_parent"
      android:layout_height="fill_parent"&gt;
      &lt;TextView android:id="@+id/textView1" 
          android:textAppearance="?android:attr/textAppearanceLarge" 
          android:layout_height="wrap_content" 
          android:layout_width="wrap_content" 
          android:text="@string/selectPoster" 
          android:layout_gravity="center_horizontal"&gt;
      &lt;/TextView&gt;
      &lt;ListView android:id="@android:id/list" 
          android:layout_height="wrap_content"  
          android:layout_width="match_parent"&gt;
      &lt;/ListView&gt;
  &lt;/LinearLayout&gt;
  </code></pre>
  
  <p>And here is the list element layout i'm using:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt;
  &lt;LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
      android:layout_width="wrap_content" android:layout_height="wrap_content"&gt;
  
      &lt;LinearLayout android:id="@+id/linearLayout1"
          android:layout_height="match_parent" 
          android:layout_width="wrap_content" &gt;
  
          &lt;ImageView android:id="@+id/logo" 
              android:src="@drawable/icon" 
              android:layout_height="wrap_content"            
              android:layout_width="22px"
              android:layout_marginTop="4px" 
              android:layout_marginRight="4px"
              android:layout_marginLeft="4px"&gt;
          &lt;/ImageView&gt;
  
          &lt;LinearLayout android:id="@+id/linearLayout2" 
              android:layout_height="match_parent" 
              android:layout_width="fill_parent" 
              android:orientation="vertical"&gt;
              &lt;TextView android:id="@+id/title"
                  android:text="TextView" 
                  android:layout_width="wrap_content"
                  android:layout_height="wrap_content" 
                  android:textSize="30px"&gt;
              &lt;/TextView&gt;
              &lt;TextView android:id="@+id/names"  
                  android:text="TextView"             
                  android:layout_width="wrap_content" 
                  android:layout_height="wrap_content"&gt;
              &lt;/TextView&gt;             
          &lt;/LinearLayout&gt;
  
      &lt;/LinearLayout&gt;
  &lt;/LinearLayout&gt;
  </code></pre>