title: Where are the UITableViewCell's initialized?
body: <p>I've created my own <code>CustomTableView</code> and <code>CustomCell</code>. The cell is in a <code>xib</code>, and I'm registering it when initializing the tableView, like this:</p>
  
  <pre><code>[self registerNib:[UINib nibWithNibName:@"CustomCell" bundle:nil] 
                      forCellReuseIdentifier:kCustomCellIdentifier];
  </code></pre>
  
  <p>If I don't do this, I won't be able to define what <code>ReuseIdentifier</code> should "point" to this class. This is my <code>cellForRow</code>:</p>
  
  <pre><code>-(UITableViewCell *)tableView:(UITableView *)tableView 
                          cellForRowAtIndexPath:(NSIndexPath *)indexPath
  {
      CustomCell *cell = [self dequeueReusableCellWithIdentifier:
                          kCustomCellIdentifier forIndexPath:indexPath];
  
      if(!cell)
      {
          cell = [[[NSBundle mainBundle] loadNibNamed:@"CustomCell" 
                          owner:self options:nil] objectAtIndex:0];
  
          cell.delegate = self;
          [cell initialSetup]; //Other stuff
      }
      else
          [cell resetCell];
  
      //And other awesome stuff
  
      return cell;
  }
  </code></pre>
  
  <p>This 'works'. When I lauch my app, my own custom cells are showing.
  However, it turns out the cell is NEVER returned as <code>nil</code> from <code>[self dequeue..</code>. Thus, the if-statement <code>if(!cell)</code> is never true. I have additional setup inside this statement that I want to perform, but I don't know where the cell's are being initialized the first time now. If I remove <code>registerNib</code>, then this statement is true, but then it's true for all cells, and none will ever be dequeued.</p>
  
  <p>I can probably work around this, and put my <code>initialSetup</code> (and other stuff) inside the <code>-(id)initWithCoder..</code>-method in the CustomCell-class, but I'd like to know where my cells are being initialized right now. Why do my cells exist before <code>cellForRowAtIndexPath</code>?</p>