如果显示标签栏,则无法调整搜索结果控制器视图底部内容插入

时间:2014-11-24 11:25:15

标签: ios objective-c iphone uisearchcontroller

该应用程序是基于UITabBar的。搜索栏嵌入在导航控制器中。虽然automaticAdjustsScrollViewInsets属性的值为YES,但结果控制器的滚动视图的.bottom contentInset不受标签栏的影响。

带有演示的UICatalog样本的简化版本在此处:SearchResultsIncorrectContentInsetsDemo on GitHub

重现的步骤:

  1. 专注于搜索字段并执行一些搜索(例如'o')
  2. 按“搜索”按钮
  3. 隐藏键盘
  4. 尝试将结果滚动到底部
  5. 表格视图内容的底部隐藏在标签栏下。

2 个答案:

答案 0 :(得分:0)

您应关闭“故事板”中“搜索栏嵌入导航栏”控制器中的“扩展边缘” - >“下底栏”选项

答案 1 :(得分:0)

我有同样的问题。

问题" automaticAdjustsScrollViewInsets"是结果控制器不知道它嵌入在UITabBarViewController中 - 你可以通过检查搜索结果控制器" tabBarController"来看到这是真的。财产是零。

为了解决这个问题,我在罪魁祸首视图控制器中手动添加了底部内容。

这绝不是一个理想的解决方案,但是,因为我没有看到通知控制器它在UITabBarViewController中的方式(羞辱" tabBarController"属性&# 39; s只读:)),它必须做到这个问题的未来启示。