title: UITableView tableFooterView not appearing
body: <p>I have a <code>UITableView</code> to which I add a <code>tableFooterView</code>, for some reason the <code>tableFooterView</code> is not appearing?</p>
  
  <p>How I add my <code>tableFooterView</code></p>
  
  <p>I add the <code>tableFooterView</code> in a <code>connectionDidFinishLoading</code> method after reloading the <code>tableview</code> data.</p>
  
  <p>So what I do is</p>
  
  <pre><code>[controls reloadData];
  
  UIView *myFooterView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 100)];
  if(self.item.canRunOnDemand)
  {
      UIButton *buttonRunWorkflow = [UIButton buttonWithType:UIButtonTypeRoundedRect];
      [buttonRunWorkflow addTarget:self action:@selector(runWorkflow:) forControlEvents:UIControlEventTouchDown];
      [buttonRunWorkflow setTitle:@"Run Now" forState:UIControlStateNormal];
      buttonRunWorkflow.frame = CGRectMake(15, 5, 290, 44); 
      buttonRunWorkflow.backgroundColor = [UIColor clearColor];
      [buttonRunWorkflow setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
      [myFooterView addSubview:buttonRunWorkflow];
  }
  if(item.canRunAlways)
  {
      UILabel *canRunAlwaysLabel = [[UILabel alloc] initWithFrame:CGRectMake(15, 46, 100, 44)];
      canRunAlwaysLabel.backgroundColor = [UIColor clearColor];
      canRunAlwaysLabel.text = @"Run Always:";
      UISwitch *canRunAlways = [[UISwitch alloc] initWithFrame:CGRectMake(115, 56, 100, 44)];
      [canRunAlways addTarget:self action:@selector(canRunAlwaysChanged:) forControlEvents:UIControlEventValueChanged];
      [myFooterView addSubview:canRunAlways];
      [myFooterView addSubview:canRunAlwaysLabel];
      [canRunAlwaysLabel release];
      [canRunAlways release];
  }
  
  [myFooterView release];
  
  [controls.tableFooterView addSubview:myFooterView];
  </code></pre>
  
  <p>Footer view height</p>
  
  <pre><code>- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
  {
      return 100;
  }
  </code></pre>
  
  <p>I have also tried this:</p>
  
  <pre><code>- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
  {
      if(section == [[fields objectAtIndex:section] count] - 1)
      {
          return 100;
      }
      else {
          return 0;
      }
  }
  -(UIView*) tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section
  {
      if(section == [[fields objectAtIndex:section] count] - 1)
      {
          UIView *myFooterView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 80)];
          if(self.item.canRunOnDemand)
          {
              UIButton *buttonRunWorkflow = [UIButton buttonWithType:UIButtonTypeRoundedRect];
              [buttonRunWorkflow addTarget:self action:@selector(runWorkflow:) forControlEvents:UIControlEventTouchDown];
              [buttonRunWorkflow setTitle:@"Run Now" forState:UIControlStateNormal];
              buttonRunWorkflow.frame = CGRectMake(15, 5, 290, 44); 
              buttonRunWorkflow.backgroundColor = [UIColor clearColor];
              [buttonRunWorkflow setTitleColor:[UIColor blackColor] forState:UIControlStateNormal];
              [myFooterView addSubview:buttonRunWorkflow];
          }
          if(item.canRunAlways)
          {
              UILabel *canRunAlwaysLabel = [[UILabel alloc] initWithFrame:CGRectMake(15, 46, 100, 44)];
              canRunAlwaysLabel.backgroundColor = [UIColor clearColor];
              canRunAlwaysLabel.text = @"Run Always:";
              UISwitch *canRunAlways = [[UISwitch alloc] initWithFrame:CGRectMake(115, 56, 100, 44)];
              [canRunAlways addTarget:self action:@selector(canRunAlwaysChanged:) forControlEvents:UIControlEventValueChanged];
              [myFooterView addSubview:canRunAlways];
              [myFooterView addSubview:canRunAlwaysLabel];
              [canRunAlwaysLabel release];
              [canRunAlways release];
          }
          return myFooterView;
      }
      else {
          return nil;
      }
  }
  </code></pre>