我有一个 UITableViewController,我可以从另一个 UIViewController 向其中添加单元格。
如果设备处于横向模式,并且我导航到 UIViewController,然后导航回 UITableViewController,则边界没问题。
同样的事情,如果我处于 portriat 模式,如果我导航到 UIViewController,然后导航回 UITableViewController,边界就很好。
问题开始显示我是否在特定方向模式下的 UITableViewController 上,并导航到 UIViewController 并更改了那里的方向。当我导航回 UITableViewController 时,边界完全困惑了。
这意味着只有当我更改 ViewController 中的方向时,UITableViewController 的边界才会变得困惑。
这是屏幕截图:
我尝试过很多事情,例如:
override func viewDidLayoutSubviews() {// tried viewWillLayoutSubviews() too
self.tableView.frame = UIScreen.main.bounds
self.tableView.layoutIfNeeded()
self.tableView.updateConstraintsIfNeeded()
}
如果您需要任何额外信息,请告诉我。
最佳答案
我找到了发生这种情况的原因,我会保留这个问题,因为每个人都可能遇到同样的问题。
我正在使用自定义转换来关闭 UIViewController、UIViewControllerAnimatedTransitioning,并且我不会在自定义转换中检查我是处于横向模式还是纵向模式。
如果您遇到同样的问题,请确保您恢复到屏幕范围。
关于ios - 更改 UIViewController 的方向会影响另一个 UITableViewController 的边界,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43643064/