我正在开发一个应用程序,我需要标题来自定义和添加我自己的按钮,只是为了单个部分。我用谷歌搜索并完成了一些可以添加按钮的代码,但我面临两个问题。
- 其他部分的标题未显示。
添加按钮后,由于 tableview 滚动大小相同,按钮无法正确显示。这就是我正在做的事情。
- (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{ UIView * headerView = [[[UIView alloc] initWithFrame:CGRectMake(1, 0, tableView.bounds.size.width, 40)] autorelease]; [headerView setBackgroundColor:[UIColor clearColor]]; if(section==2){ float width = tableView.bounds.size.width; int fontSize = 18; int padding = 10; UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(padding, 2, width - padding, fontSize)]; label.text = @"Texto"; label.backgroundColor = [UIColor clearColor]; label.textColor = [UIColor whiteColor]; label.shadowColor = [UIColor darkGrayColor]; label.shadowOffset = CGSizeMake(0,1); label.font = [UIFont boldSystemFontOfSize:fontSize]; [headerView addSubview:label]; UIButton * registerButton = [UIButton buttonWithType:UIButtonTypeCustom]; [registerButton setImage:[UIImage imageNamed:@"P_register_btn.png"] forState:UIControlStateNormal]; [registerButton setFrame:CGRectMake(0, 0, 320, 150)]; [headerView addSubview:registerButton]; return headerView; } return headerView; } - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{ return 3; } - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{ if(section==0) return @"Registration"; else if(section==1) return @"Player Detail"; return nil; }
这是我的输出图像,其中 Texto 文本显示,但按钮位于表格视图滚动高度的结束限制以及第 0 节和第 1 节标题未显示的区域下方,我还阻止了 viewforheaderinsection 中第一节和第二节的代码。提前致谢。