模拟器中表格视图的起始位置错误,并且在情节提要中不一样

Posted

技术标签:

【中文标题】模拟器中表格视图的起始位置错误,并且在情节提要中不一样【英文标题】:start position of table view is wrong in simulator, and is not the same in storyboard 【发布时间】:2013-12-06 03:15:32 【问题描述】:

我在storyboard中创建了一个tableview,看起来不错,但是模拟器或设备中的起始位置不对。 “标签”不应与时间处于同一位置。我怎么能解决它?

【问题讨论】:

ios 7 中,状态栏包含在 View Controller 中。是否保留状态栏? Simulated metrics 就是这样。模拟。它们对于设置视图的实际显示方式很有用,以帮助设置情节提要中的外观,但是在实际程序中是否显示导航栏或标签栏与您是否选择它无关作为故事板上的模拟指标。 那不是tableview。 【参考方案1】:

模拟指标就是这样。模拟。它们对于设置视图的实际显示方式很有用,以帮助设置情节提要中的外观,但是在实际程序中是否显示导航栏或标签栏与您是否选择它无关作为情节提要上的模拟指标。

在这种情况下,您可能正在使用约束,并将标签的 y 原点设置为容器视图下方 0 ​​像素。当您使用模拟情节提要指标时,这会将标签放在您在情节提要上模拟的导航栏下方。但是在您的实际项目中,您并没有在该场景中包含导航栏,并且您的标签出现在视图控制器的顶部。

您可以了解如何阻止状态栏显示...或者您可以将标签的 y 原点向下移动 20 像素(状态栏的高度)。


如果您提供有关如何进行布局(自动布局?)以及您希望其外观如何的更多详细信息,我可以提供更多帮助。但我会先将所有模拟指标保留在 inferred 上,并且只有在您编写代码以编程方式添加/删除您可以通过模拟指标更改的功能之一之后才明确更改模拟指标。


如果您对此答案没有采取任何其他措施,请理解这一点:从模拟指标下拉菜单中选择一个项目只会更改视图在情节提要中的显示方式,不会更改您的应用中实际显示的内容.

【讨论】:

非常感谢!我误解了模拟指标。我的表格视图包含 1 个静态单元格。单元格顶部有一个标签。我想要做的是使单元格位于状态栏下方。 我使用了自动布局,没有添加约束。 你想要导航栏吗?您是使用带约束的自动布局,还是使用常量 x,y,width,height? 我不想要导航栏,但我想要状态栏。我通过向下拖动其边框来设置单元格的高度。我是否需要编码才能获得状态栏? 状态栏默认会出现。您应该将导航栏模拟指标更改为推断。现在将标签拖动到您想要的确切位置(在 y=20 处有一个布局指南,就在状态栏的正下方)。在模拟器中启动并查看它的外观。如果仍然不正确,您可能需要设置约束:developer.apple.com/library/ios/documentation/userexperience/…【参考方案2】:

试试这个

self.edgesForExtendedLayout = UIRectEdgeNone;

希望这会对你有所帮助。

【讨论】:

以上是关于模拟器中表格视图的起始位置错误,并且在情节提要中不一样的主要内容,如果未能解决你的问题,请参考以下文章

UITableView 分隔符插入参考在情节提要中不起作用

为啥自动布局在 xcode 7.2 中不再起作用?

为啥使用情节提要在 UIScrollView 中不显示内容

iOS 如何使用早期版本的 iOS 中不存在的情节提要元素?

使用自动布局时标签不会调整大小,情节提要中的约束

在情节提要中自定义表格视图单元格时出现 NSInternalInconsistencyException