ios - 添加到 ScrollView 的 UIView 不适合全屏,导航栏位于顶部

标签 ios xcode swift autolayout

编辑:对我的问题的小更新,我现在所做的解决方案显然只是让我的 ScrollView 变白。这解决了我的问题,但我真正好奇的是为什么内容 View 到底做了我下面解释的事情。仍然对向带有导航栏的 VC 添加 ScrollView 时的常见格式化做法感到好奇。

所以我对这里发生的事情有点困惑。我有一个顶部有导航栏的 VC,我需要向其添加 ScrollView 。因此,当我这样做时,我将其拉伸(stretch)到屏幕顶部导航栏的正下方,然后添加约束。 (我还将 ScrollView 背景设为红色,以便可以将其与内容 View 区分开来)

其次,我添加了一个 UIView,我将其命名为内容 View ,并将其拉伸(stretch)到与 ScrollView 完全相同的位置。然后还为此添加了限制。 (尚未添加任何对象)

然后我运行应用程序来检查它的外观,我注意到导航栏下方有一大块红色,这意味着 ScrollView 在导航栏正下方的正确位置全屏显示,但我的内容观点不是。

我为解决此问题所做的一些事情

  1. 我将 ScrollView 一直延伸到 VC 的顶部,经过导航栏,但是当我运行应用程序时,我可以在导航栏后面看到红色,我认为这意味着它不正确。

  2. 我只是将内容 View 扩展到了 VC 的顶部,但这对我来说似乎也不合适,尽管两者似乎都解决了问题。

所以我的问题是:

  1. 当向顶部有导航栏的 VC 添加 View 时,我应该仅将这些 View 扩展到导航栏的底部,还是一直延伸到 VC 的顶部?

  2. 我对 ScrollView 不熟悉,因为这是我第一次处理 ScrollView ,在这种情况下我是否遗漏了一些东西?或者做错了什么?

非常感谢您的帮助,谢谢。

最佳答案

1) 将 ScrollView 一直向上移动到导航栏之外。 2) 让 ScrollView 与其父 View 的高度相匹配。

关于ios - 添加到 ScrollView 的 UIView 不适合全屏,导航栏位于顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34237820/

相关文章:

ios - 在模拟器中运行 Apple Watch glance 应用程序时出现问题

ios - 禁用的 uibarbuttonitem 的文本颜色始终是正常状态的颜色

ios - Xcode Assets 是否需要不同的图像大小?

swift - 如何将数据从 tableview 传递到不同的 uiviewcontroller

ios - 使用 iOS/swift 对 OAuth2 和 Eventbrite 进行身份验证时出现 “Oops, something went wrong” 错误

ios - 如何将 NSMutableArray 的键添加到另一个数组中?

iphone - 在 KIF 中检测到辅助功能未开启

iphone - 如何确定调用 moveItemAtURL :toURL: or replaceItemAtURL:WithItemAtURL: 时需要多少时间

ios - Swift:If let 语句无法处理空数组

ios - 可以从托管 SwiftUI View 调用 UIKit UIViewController 中的闭包吗?