Posted
Filed under iphone
타이틀

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
    return [NSString stringWithFormat:@"test %i",section];
}



해더 높이
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
    return 44;
}

풋터 높이
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section {
return 44;
}

섹션별 디자인 설정

- (UIView *) tableView:(UITableView *)tableView
  viewForHeaderInSection:(NSInteger)section {
   UIView* customView = [[[UIView alloc]
     initWithFrame:CGRectMake(10.0, 0.0, 300.0, 44.0)]
       autorelease];
  customView.backgroundColor =
     [UIColor colorWithRed:.6 green:.6 blue:1 alpha:.9];
   UILabel * headerLabel = [[[UILabel alloc]
     initWithFrame:CGRectZero] autorelease];
   headerLabel.backgroundColor = [UIColor clearColor];
   headerLabel.opaque = NO;
   headerLabel.textColor = [UIColor whiteColor];
   headerLabel.font = [UIFont boldSystemFontOfSize:16];
   headerLabel.frame = CGRectMake(0,-11, 320.0, 44.0);
   headerLabel.textAlignment = UITextAlignmentCenter;
   headerLabel.text = [NSString stringWithString:@"Your Text"];
   [customView addSubview:headerLabel];
   return customView;
}


- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section { 
 
UIView *headerView = [[[UIView alloc] initWithFrame:CGRectMake(0,0, 320, 44)] autorelease]; 
 
UILabel *label = [[[UILabel alloc] initWithFrame:headerView.frame] autorelease]; 
  label
.textColor = [UIColor redColor]; 
  label
.text = [NSString stringWithFormat:@"Section %i", section]; 
 
 
[headerView addSubview:label]; 
 
return headerView; 
} 


// Need to refactor so that the label is Public Sharing and Priviate Sharing and the actions work for each switch 
- (UIView *) tableView: (UITableView *) tableView
viewForFooterInSection
: (NSInteger) section
{ 
 
if (section == 0 || section == 1) { 
   
CGRect screenRect = [[UIScreen mainScreen] applicationFrame]; 
   
UIView* footerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, screenRect.size.width, 44.0)]; 
    footerView
.autoresizesSubviews = YES; 
    footerView
.autoresizingMask = UIViewAutoresizingFlexibleWidth; 
    footerView
.userInteractionEnabled = YES; 
 
    footerView
.hidden = NO; 
    footerView
.multipleTouchEnabled = NO; 
    footerView
.opaque = NO; 
    footerView
.contentMode = UIViewContentModeScaleToFill; 
 
   
// Add the label 
   
UILabel*    footerLabel = [[UILabel alloc] initWithFrame:CGRectMake(150.0, -5.0, 120.0, 45.0)]; 
    footerLabel
.backgroundColor = [UIColor clearColor]; 
    footerLabel
.opaque = NO; 
    footerLabel
.text = @"Sharing"; 
    footerLabel
.textColor = [UIColor tableHeaderAndFooterColor]; 
    footerLabel
.highlightedTextColor = [UIColor tableHeaderAndFooterColor]; 
    footerLabel
.font = [UIFont boldSystemFontOfSize:17]; 
    footerLabel
.shadowColor = [UIColor whiteColor]; 
    footerLabel
.shadowOffset = CGSizeMake(0.0, 1.0); 
   
[footerView addSubview: footerLabel]; 
 
   
[footerLabel release];  
 
   
// Add the switch 
   
UISwitch* footerSwitch = [[UISwitch alloc] initWithFrame:CGRectMake(215.0, 5, 80.0, 45.0)]; 
   
[footerView addSubview: footerSwitch]; 
 
   
// Return the footerView 
   
return footerView; 
 
} 
 
else return nil; 
} 
// Need to call to pad the footer height otherwise the footer collapses 
- (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { 
 
switch (section) { 
   
case 0: 
     
return 40.0; 
   
case 1: 
     
return 40.0; 
   
default: 
     
return 0.0; 
 
} 

2011/06/29 13:10 2011/06/29 13:10