在具有大标题

时间:2018-01-31 14:15:08

标签: ios iphone uinavigationcontroller ios11 uirefreshcontrol

我在UITableViewController中嵌入了简单的UINavigationController,其中更喜欢大型标题。我在表视图控制器中添加了一个刷新控件。

在iOS 11的iPhone上,如果我以纵向模式启动应用程序,请切换到横向并开始刷新表格视图,刷新控件不会显示。刷新发生,但控件不存在。它甚至不在视图层次结构中:

view hierarchy

请注意,如果我处于纵向模式,并且在每个方向的iPad上都可以在iPhone上使用相同的 它适用于iOS 10 ,适用于每个设备和每个方向,也适用于iOS 11 ,如果我禁用大型游戏,所以它显然与大型游戏有关。

以下是iOS 10上同一内容的截图:

screenshot of the refresh control on iOS 10

I made a sample project for this.没有涉及代码,这是Interface Builder中的整个设置:

screenshot of setup

当我使用带有嵌入式UIViewControllerUITableView的简单UIScrollView进行尝试时,会发生同样的事情。

我很确定这是一个错误。如何在横向上显示iPhone上的刷新控件?

2 个答案:

答案 0 :(得分:3)

我们通过在每次旋转时重新创建刷新控件来解决此问题。它也在viewDidLoad()中调用。

LazyModule

答案 1 :(得分:2)

这显然可以表现为一个错误。它很容易复制。你的描述似乎很正确;一旦你以纵向显示刷新控件然后旋转到横向,刷新控件甚至不在横向界面中(如果你给它一个背景颜色很容易看到)。

但总的来说,这并不奇怪。大型游戏中存在许多错误; Apple显然没有仔细考虑过这个功能。