通过自动布局推送时隐藏底栏
Hide Bottom Bar When Pushed through Autolayout
我有一个 UITabBarController
,其中一个 UINavigationController
持有一个 UIViewController
作为根视图控制器。
当点击 UIViewController
中的其中一个按钮时,我会推送常规聊天 window UIViewController
(使用 TableView + 输入视图)结束隐藏底部标签栏。 (使用 "Hide bottom bar when pushed" 标志)
在情节提要中,我向 VC 添加了一个常规 UIView
子类,它看起来像底部栏,我使用自动布局将其固定到 VC 视图的底部。
问题
当我按下 VC 时,这个视图需要一秒钟才能固定到底部,看起来自动布局将它固定到底部,就好像标签栏没有隐藏一样,一秒钟后它识别出标签栏是隐藏并将其移动到视图的真正底部。
要了解清楚的信息,请查看此屏幕截图
现在我将让您了解 table 视图的限制。
现在我展示了 InputView 的约束
我也在添加我的视图层次结构...
我在我的项目中遇到了类似的问题。我通过选择我想要固定在底部的视图(在你的例子中是输入视图)解决了这个问题,按住 Command
,然后选择它的超级视图(现在应该突出显示两个视图)。
然后我选择了IB底部的对齐按钮:
并添加了 Bottom Edges
约束。
我最初所做的是使用固定菜单将视图固定到其父视图,但似乎默认情况下会将其固定到底部布局,这会导致在转换过程中出现奇怪的移动。
编辑:
看到最新的截图后,问题可能出在其中一个超级视图上。我假设 chatWindow
是 UIView
,而您的 Scroll View
只是水平的。以下是您应该检查的内容:
chatWindow
固定在 scrollView
的底部,类似于我上面概述的内容。
scrollView
已固定到其 superview
,正如我在上面概述的那样。
- 将
scrollView
之外的 inputView
移动到根超级视图。然后将其逐层向下移至当前位置。
我有一个 UITabBarController
,其中一个 UINavigationController
持有一个 UIViewController
作为根视图控制器。
当点击 UIViewController
中的其中一个按钮时,我会推送常规聊天 window UIViewController
(使用 TableView + 输入视图)结束隐藏底部标签栏。 (使用 "Hide bottom bar when pushed" 标志)
在情节提要中,我向 VC 添加了一个常规 UIView
子类,它看起来像底部栏,我使用自动布局将其固定到 VC 视图的底部。
问题 当我按下 VC 时,这个视图需要一秒钟才能固定到底部,看起来自动布局将它固定到底部,就好像标签栏没有隐藏一样,一秒钟后它识别出标签栏是隐藏并将其移动到视图的真正底部。
要了解清楚的信息,请查看此屏幕截图
现在我将让您了解 table 视图的限制。
现在我展示了 InputView 的约束
我也在添加我的视图层次结构...
我在我的项目中遇到了类似的问题。我通过选择我想要固定在底部的视图(在你的例子中是输入视图)解决了这个问题,按住 Command
,然后选择它的超级视图(现在应该突出显示两个视图)。
然后我选择了IB底部的对齐按钮:
并添加了 Bottom Edges
约束。
我最初所做的是使用固定菜单将视图固定到其父视图,但似乎默认情况下会将其固定到底部布局,这会导致在转换过程中出现奇怪的移动。
编辑:
看到最新的截图后,问题可能出在其中一个超级视图上。我假设 chatWindow
是 UIView
,而您的 Scroll View
只是水平的。以下是您应该检查的内容:
chatWindow
固定在scrollView
的底部,类似于我上面概述的内容。scrollView
已固定到其superview
,正如我在上面概述的那样。- 将
scrollView
之外的inputView
移动到根超级视图。然后将其逐层向下移至当前位置。