Может быть, это решение, потому что я не думаю, что в вашем коде что-то не так.
Когда вы объявляете свою кнопку как
UIButton* tempBtn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
никогда не назывался релиз для этого btn.
[tempBtn release];//dont do this!!
Я попробовал это сам, и все работало нормально.
- (void)viewDidLoad {
[super viewDidLoad];
UIButton* tempBtn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
tempBtn.frame = CGRectMake(50, 50, 50, 50);
[tempBtn addTarget:self action:@selector(hello:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:tempBtn];
}
- (void) hello:(id) sender
{
NSLog(@"helloooo");
}