2009-05-08 6 views

Respuesta

8

bien, después de buscar y trabajar en ello que he hecho lo siguiente:

// 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)] autorelease]; 
    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: 
    case 1: 
     return 40.0; 
    default: 
     return 0.0; 
    } 
} 

espero que esto es correcto y si esto ayuda a nadie por favor voten esto. ¡Aclamaciones!

0

creo que es necesario para la AutoRelease uiview-

0

he utilizado un código similar a la ... pero añade un NSLog() llamada justo después de la addSubview.

Cuando me desplazo mi tableView ... consigo 100s de mensaje como:

> Adding another subview 
> Adding another subview 
> Adding another subview 
> Adding another subview 
> Adding another subview 
> Adding another subview 

¿Eso es normal? Solo quería el botón ONE, en ONE vista, en la parte inferior de mi TableView.

Cuestiones relacionadas