title: UITableView didSelectRowAtIndexPath not being called on first tap
body: <p>I'm having an issue with UITableView's didSelectRowAtIndexPath of ios 5, which is correct in ios 4.</p>
  
  <p>The first time I tap any row in the table, the method does not get called. Once I select another row, it call the didSelectRowAtIndexPath, but pass the last indexPath.</p>
  
  <p>I've set tableView.delegate already, and it can run correctly in ios4.</p>
  
  <pre><code>MainView.xib
  UITabBarController
       --UINavigationController
           --**UITableViewController**
  </code></pre>
  
  <p>Any suggestions?</p>
  
  <pre><code>- (void)viewDidLoad
  {
      [super viewDidLoad];
      self.tableView.delegate = self;
      self.tableView.dataSource = self;
  }
  
  #pragma mark - Table view data source
  
  - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
  {
      return 1;
  }
  
  - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
  {
      return 10;
  }
  
  - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
  {
      static NSString *CellIdentifier = @"Cell";
      UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
      if (cell == nil) {
          cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier] autorelease];
      }
      cell.textLabel.text = [[NSString alloc]initWithFormat:@"%d",indexPath.row];
      return cell;
  }
  
  #pragma mark - Table view delegate
  
  - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
  {
      NSLog(@"%d",indexPath.row);
  }
  </code></pre>