目前,我正在故事板中创建一个原型单元,并使用该单元作为节标题。
在 tableView:viewForHeaderInSection: 方法中,我使单元格出队并返回它。
我的节标题单元格中有一个 UITextField 和一个 UIButton。
当我点击文本字段时,键盘会出现,但一旦焦点从文本字段移开,整个节标题就会消失。
当我直接将单元格作为节标题视图返回时,会发生这种情况,但如果我将新分配的 UIView 作为节标题视图返回,并将单元格添加为子视图,那么除了自动调整大小蒙版之外,一切正常。
为什么标题消失了?
我不确定在这里做什么最好。
-(UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
static NSString *CellIdentifier = @"SectionHeader";
SettingsTableViewCell *sectionHeaderCell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
//return sectionHeaderCell; // returning cell directly, section header disappears when focus is moved away from text field.
UIView * headerView = [[UIView alloc] initWithFrame:sectionHeaderCell.frame];
[headerView addSubView:sectionHeaderCell];
return sectionHeaderCell;//header view never disappears, but auto resizing masks do not work. Need to know how to set autoresizing masks to headerView so that it resizes correctly.
}
原型单元格表视图仅允许您设计cells在故事板编辑器中,而不是节页眉和页脚。您尝试使用UITableViewCell
因为节头是一个聪明的技巧,但它只是不受所涉及的类的支持 -UITableViewCell
不适合用于表视图单元格以外的任何用途。它可能比视图消失或布局不正确更糟糕; UIKit 完全有权利让断言失败、删除所有应用程序的数据、吊销你的开发者证书或放火烧你的房子。
如果您希望代码正常运行,您的选择是在代码中创建节标题或将它们放在单独的 XIB 文件中。我知道这不是您想要做的,但这些是您可以选择的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)