拖动到弹出视图控制器会导致固定到底部的按钮跳转(使用标签栏)

Posted

技术标签:

【中文标题】拖动到弹出视图控制器会导致固定到底部的按钮跳转(使用标签栏)【英文标题】:Dragging to pop view controller causes button pinned to bottom to jump (using a tab bar) 【发布时间】:2018-02-21 08:20:35 【问题描述】:

我遇到了标签栏控制器的问题。见下图:

按钮固定在安全区域底部。当视图控制器第一次被推送时,它会出现在正确的位置。在viewWillAppear 我有以下代码:

override func viewWillAppear(_ animated: Bool) 
        super.viewWillAppear(animated)
        tabBarController?.tabBar.isHidden = true

推送这个控制器的视图控制器在viewWillAppear中有如下内容:

override func viewWillAppear(_ animated: Bool) 
        super.viewWillAppear(animated)
        tabBarController?.tabBar.isHidden = false

由于标签栏隐藏/取消隐藏转换,它的按钮似乎在跳跃。我想我可以把它钉在view 的底部而不是安全区域,但是按钮不会在 iPhoneX 的正确位置。有没有人可以解决这个问题?

【问题讨论】:

【参考方案1】:

@Sandeep 是对的,这是一种可能的解决方案。 我也遇到过这种情况,对我来说,解决方案是更改按钮底部约束,以等于超级视图的底部而不是布局指南的底部。隐藏标签栏后调整布局指南的大小,并且由于引用了按钮的底部约束,因此按钮跳转。更改为视图解决了我的问题。

【讨论】:

以上是关于拖动到弹出视图控制器会导致固定到底部的按钮跳转(使用标签栏)的主要内容,如果未能解决你的问题,请参考以下文章

弹出框未附加到锚点

弹出视图控制器导致条形按钮项消失

如何将 id 从删除按钮传递到弹出删除按钮

使单元格粘在表格视图的底部

我无法将按钮添加到弹出框

在按钮提交时将 <p> 数据发送到弹出窗口