2009-05-08 4 views

ответ

8

Хорошо, после поиска и работы на ней я сделал следующее:

// 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; 
    } 
} 

Я надеюсь, что это правильно, и если это поможет кому-либо еще, пожалуйста, оцените это. Ура!

0

я думаю, что вам нужно autorelease в uiview-

0

я использовал код, подобный тому, что ... но я добавил вызов NSLog() сразу после addSubview.

Когда я прокручивать мой Tableview ... Я получаю 100s из сообщения, как:

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

Это нормально? Я только хотел ОДИН кнопка, в ОДИН вид, в самом низу моего TableView.

Смежные вопросы