iOS11: UITableView 内容和键盘之间的间距

iOS11: UITableView spacing between content and keyboard

所以我的问题比较简单

我创建了一个只有 1 个屏幕的测试应用程序。
这个屏幕是一个 UINavigationController 和一个 UITableViewController 作为根视图控制器。 table 视图有 30 个单元格,其中添加了一个 UITextField 作为子视图。 UINavigationController 还显示工具栏以更好地演示问题。

现在来谈谈我的问题。我在 iPhone X 模拟器上启动这个应用程序并滚动到底部。然后我点击 UITextField 来编辑文本,输入一些文本并再次滚动到底部。现在有问题了。整个键盘高度添加为底部内容插图,如您所知,由于 iOS11 有新的 safeArea,现在从中添加了 contentInset。正如您现在已经可以想象的那样,contentInset 太大了,因为键盘高度也是从屏幕边缘而不是 safeArea 边缘计算的。为了更好地理解问题,请查看随附的屏幕截图。

如您所见,滚动条和内容结束得太早了! table 视图内容和键盘之间的巨大间距不应该存在!底部的safeArea越大,间距越大。


苹果自己解决了这个问题。 在 iOS 11.1(测试版)中,问题不再出现。