UIButton Table footer not responding

For custom table footers, I use the following code

- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section { if(editmode) { if(footerView == nil) { //allocate the view if it doesn't exist yet footerView = [[UIView alloc] init]; //we would like to show a gloosy red button, so get the image first UIImage *image = [[UIImage imageNamed:@"button_green.png"] stretchableImageWithLeftCapWidth:8 topCapHeight:8]; //create the button UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect]; [button setBackgroundImage:image forState:UIControlStateNormal]; //the button should be as big as a table view cell [button setFrame:CGRectMake(10, 3, 300, 44)]; //set title, font size and font color [button setTitle:@"Photo" forState:UIControlStateNormal]; [button.titleLabel setFont:[UIFont boldSystemFontOfSize:20]]; [button setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; //set action of the button [button addTarget:self action:@selector(selectExistingPicture) forControlEvents:UIControlEventTouchUpInside]; //add the button to the view [footerView addSubview:button]; UIButton *button2 = [UIButton buttonWithType:UIButtonTypeRoundedRect]; image = [[UIImage imageNamed:@"button_grey_dark.png"] stretchableImageWithLeftCapWidth:8 topCapHeight:8]; [button2 setBackgroundImage:image forState:UIControlStateNormal]; //the button should be as big as a table view cell [button2 setFrame:CGRectMake(10, 50, 300, 44)]; //set title, font size and font color [button2 setTitle:@"Note" forState:UIControlStateNormal]; [button2.titleLabel setFont:[UIFont boldSystemFontOfSize:20]]; [button2 setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; //set action of the button [button2 addTarget:self action:@selector(mkFolder) forControlEvents:UIControlEventTouchUpInside]; //add the button to the view [footerView addSubview:button2]; // [button setupAsRedButton]; } //return the view for the footer return footerView; } return nil; } 

Using this, the first button responds perfectly, but the second does not register any events. Even if the function does not exist, a null function error is not generated. Any ideas on why UITouchUpInside is not recognized?

+4
source share
1 answer

Doh !!!

Right under this code I had

 // specify the height of your footer section - (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section { //differ between your sections or if you //have only on section return a static value return 50; } 

Which parameter UIView ignores everything that is less than 50 pixels. Changed it to 100 and I was good.

+9
source

Source: https://habr.com/ru/post/1341071/


All Articles