在UIButton上加载视图单击

时间:2011-07-22 12:54:26

标签: objective-c xcode

我尝试在UIButton上点击一个UIViewController点击

GehaltVIew.m

#import "GehaltVIew.h"
#import "Berechnen.h"

- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section {

    UIView *footerView  = [[UIView alloc] init];

    UIButton *berechnenButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
    berechnenButton.frame = CGRectMake(10, 10, 300, 40); 
    [berechnenButton setTitle:@"Berechnen!" forState:UIControlStateNormal];
    [berechnenButton addTarget:self action:@selector(berechnenGehalt) forControlEvents:UIControlEventTouchUpInside];

    [footerView addSubview:berechnenButton];

    return footerView;
}


- (void)berechnenGehalt
{
    Berechnen *dvController = [[Berechnen alloc] initWithNibName:@"Berechnen" bundle:nil];

    self.view = dvController;
}

但是我收到了这个错误:

2011-07-22 14:51:59.598研讨会App2 [33791:207] - [Berechnen setFrame:]:无法识别的选择器发送到实例0x5d05bd0

1 个答案:

答案 0 :(得分:2)

从这句话:

 Berechnen *dvController = [[Berechnen alloc] initWithNibName:@"Berechnen" bundle:nil];

在我看来Berechnen应该是UIViewController,而不是UIView,所以下一行应该是:

self.view = dvController.view;

请注意,tableView:viewForFooterInSection您可能会泄漏footerView。我认为你应该自动释放footerView:

UIView *footerView  = [[[UIView alloc] init] autorelease];