UITableView中的UIView在成为firstResponder时消失

时间:2015-04-18 22:18:03

标签: objective-c uitableview uiview keyboard first-responder

在storyboard中我有一个UITableViewController - > UITableView - > UITableViewSecion - >静态细胞

在同一个UITableView中我还有一个UIView,它包含一个背景图像和UITextView。

单击按钮会显示UIView并设置它的框架,看起来没问题,但只要我点击UITextView或以编程方式将其设为firstResponder,键盘就会出现并且视图消失

单击按钮时的代码

self.myView.frame = CGRectMake(0, self.tableView.contentOffset.y+100, self.tableView.frame.size.width, self.tableView.frame.size.height-100);
self.myView.hidden = NO;

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您可以复制粘贴我们将视图添加到tableview的代码吗?你是用限制还是用框架做的?

您遇到的问题可能是由于UITableViewControllers会自动缩小键盘显示的UITableView的contentSize。如果使用addSubview以编程方式向tableView添加UIView,则可能需要添加一个灵活的底部调整大小掩码,以确保当contentSize高度缩小时,视图将保持连接到顶部而不是底部。

在viewDidLoad上试试这个:

[theViewYouAddedToTableView setAutoresizingMask:UIViewAutoresizingFlexibleBottomMargin];