这就是我的工作
运行界面构建器时,一切都很顺利。
但这些事情都行不通。
如果我在导航栏顶部添加一个按钮,则会出现按钮,但不会调用IBAction。按钮似乎位于导航栏(其他地方)下方的某个级别
如果我为tableView添加页脚视图,则不会显示。我相信UIView再次掩盖它或其他......
- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section
{
UIView *viewForFooter = [[UIView alloc] init ];
UIButton *footerButton = [[UIButton alloc] initWithFrame:CGRectMake(200, 40, 100, 40)];
footerButton.titleLabel.text = @"Forgot Login";
//self.forgotLogin = footerButton;
[viewForFooter addSubview:footerButton];
return viewForFooter;
}
为什么?
答案 0 :(得分:0)
1)没有反应点击:尝试在代码中添加操作。如果它有效,连接IBAction就出了问题。
[self.barButton setTarget:self];
[self.barButton setAction:@selector(IBActionHandler:)];
作为备份,您还可以尝试在代码中添加按钮:
UIBarButtonItem *barButton = [[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemDone
target:self
selector:@selector(IBActionHandler:)];
self.navigationItem.rightBarButtonItem = barButton;
[barButton release];
2)隐形按钮 - 我认为您的按钮是自定义UIButton,因此它是透明的。标题不可见,因为您必须将其设置为:
[footerButton setTitle:@"Forgot Login" forState:UIControlStateNormal];
如果你想要一个普通的圆角按钮,你必须在>>之后设置框架。
UIButton *footerButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
// Careful, this button is autoreleased.
[footerButton setFrame:CGRectMake(200, 40, 100, 40)];
顺便说一下,你的CGRects可能也有问题。也许应该使用框架正确初始化footerView,您可能必须实现
-(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
。
PS:使用标准的UITableViewController实际上可能是个好主意。 快乐的编码!