title: ios: uitableview section header anchor to top of table
body: <p>i'm trying to make a table with multiple section (like contact app) 
   everything went well and i've created custom section header on top of each section displaying the character representing this section..the problem is i want it to be like Contact exactly where the header stay on the top till the next header collapse with it ...how can this happen </p>
  
  <p>i'm using the following code (to make it easier for you to figure out</p>
  
  <pre><code>    - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView
  {
  
      // Return the number of sections.
     return [stateIndex count];
  }
  
  
  
  - (UIView *)tableView:(UITableView *)aTableView viewForHeaderInSection:(NSInteger)section
  {
  
      UILabel *sectionHeader = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 200, 40)];
      sectionHeader.backgroundColor = [UIColor clearColor];
      sectionHeader.font = [UIFont boldSystemFontOfSize:18];
      sectionHeader.textColor = [UIColor whiteColor];
      sectionHeader.text = [stateIndex objectAtIndex:section];
      sectionHeader.textAlignment=UITextAlignmentCenter;
      return sectionHeader;
  }
  //---set the index for the table---
  - (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView {
      return stateIndex;
  }
  - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
  
      //---get the letter in each section; e.g., A, B, C, etc.---
      NSString *alphabet = [stateIndex objectAtIndex:section];
  
      //---get all states beginning with the letter---
      NSPredicate *predicate =
      [NSPredicate predicateWithFormat:@"SELF beginswith[c] %@", alphabet];
      NSArray *states = [resultPoets filteredArrayUsingPredicate:predicate];
  
      //---return the number of states beginning with the letter---
      return [states count];
  
  }
  
  
  - (UITableViewCell *)tableView:(UITableView *)aTableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
  {
  
      static NSString *CellIdentifier = @"Cell";
      PoemsCell *cell = [aTableView dequeueReusableCellWithIdentifier:CellIdentifier];
      int row = indexPath.row;
  
  
  
  
      //---get the letter in the current section---
      NSString *alphabet = [stateIndex objectAtIndex:[indexPath section]];
  
      //---get all states beginning with the letter---
      NSPredicate *predicate =
      [NSPredicate predicateWithFormat:@"SELF beginswith[c] %@", alphabet];
      NSArray *states = [resultPoets filteredArrayUsingPredicate:predicate];
  
      if ([states count]&gt;0) {
          //---extract the relevant state from the states object---
          NSString *cellValue = [states objectAtIndex:row];
  
          cell.poemText.text = cellValue;
  
      }
  
  
  
      return cell;
  }
  </code></pre>