textField resignFirstResponder消失UITableView标头

时间:2015-12-22 14:12:03

标签: ios uitableview uitextfield resignfirstresponder

我在UITextField中有一个UIView,用作UITableView的tableHeaderView。

当我为resignFirstResponder调用textField以解除键盘时,整个tableHeaderView都会消失。当我在键盘启动时尝试重新加载tableview的数据时也会发生同样的情况。

任何想法为什么?

编辑:示例代码

UITableViewCell *header = [self.tableView dequeueReusableCellWithIdentifier:@"mapViewCell"];
UITextField *searchField = [header viewWithTag:6];
searchField.delegate = self;
self.tableView.tableHeaderView = header;

并在textfield的委托方法中:

- (BOOL)textFieldShouldReturn:(UITextField *)textField
{
    [searchField resignFirstResponder];
    return YES;
}

键盘被解除,但整个tableHeaderView消失(变成白色)

2 个答案:

答案 0 :(得分:4)

我通过将用作UITableViewCell的{​​{1}}包裹在tableHeaderView内解决了这个问题:

UIView

答案 1 :(得分:1)

在swift 3中,

let view : UIView = UIView.init(frame: (header?.frame)!)
view.addSubview(h)
tableView.tableHeaderView = view