我的 ScrollView 没有垂直滚动
My ScrollView is not scrolling vertically
我正在 Xcode 9 和 Swift 4 中编写一个应用程序,我已经将 UIScrollview 添加到一个视图中,该视图旨在显示一个高度为 3030 像素的 jPeg。我已将滚动视图添加到我的视图中,并在 IB 的 Outlets 中分配了委托。我已将名为 scrollView 的 IBOutlet 附加到 UIScrollview,并将带有 jPeg 的 UIImageView 添加到 UIScrollview。我已将 UIScrollView 的大小设置为 375W 和 620H,然后将 UIImageView 设置为 375W 和 3030H。这应该完成界面生成器中的工作。
在控制器中,我将 UIScrollViewDelegate 添加到 Class 并将下面的代码添加到 ViewDidLoad
//scrollView.delegate = self
scrollView.contentSize = CGSize(width: 375, height: 3040)
我已经在 IB 中注释掉了委托行。当我 运行 该应用程序时,屏幕上出现了图像,但是当我尝试滚动时,它几乎只滚动了一个屏幕。我错过了什么?
您需要在滚动视图中添加一个 UIView,然后将该视图 top/bottom/leading/trailing 0 添加到滚动视图,然后在视图中添加图像视图并添加图像视图底部约束到那个视图,所以你的滚动视图将正常工作。
详情请参考下图。
您必须将滚动视图放在一个 UIView 中,并将另一个 UIView 放在滚动视图中。
- 外部视图约束:前导、尾随、顶部和底部 - 0
- 滚动视图约束:前导、尾随、顶部和底部 - 0
- 内部视图约束:前导、尾随和顶部到 Superview,宽度与外部视图相等,底部 space 到 -250,高度等于 900(内容的高度)
- 立即设置您的内容大小。
您可以实现如下图截图
//Height Constant of image
@IBOutlet weak var ConstHeight: NSLayoutConstraint!
override func viewDidLoad() {
super.viewDidLoad()
if #available(iOS 11.0, *) {
self.scrollView.contentInsetAdjustmentBehavior = .never
}else{
self.automaticallyAdjustsScrollViewInsets = false
}
//You can change height on here too
self.ConstHeight.constant = 800
}
我正在 Xcode 9 和 Swift 4 中编写一个应用程序,我已经将 UIScrollview 添加到一个视图中,该视图旨在显示一个高度为 3030 像素的 jPeg。我已将滚动视图添加到我的视图中,并在 IB 的 Outlets 中分配了委托。我已将名为 scrollView 的 IBOutlet 附加到 UIScrollview,并将带有 jPeg 的 UIImageView 添加到 UIScrollview。我已将 UIScrollView 的大小设置为 375W 和 620H,然后将 UIImageView 设置为 375W 和 3030H。这应该完成界面生成器中的工作。
在控制器中,我将 UIScrollViewDelegate 添加到 Class 并将下面的代码添加到 ViewDidLoad
//scrollView.delegate = self
scrollView.contentSize = CGSize(width: 375, height: 3040)
我已经在 IB 中注释掉了委托行。当我 运行 该应用程序时,屏幕上出现了图像,但是当我尝试滚动时,它几乎只滚动了一个屏幕。我错过了什么?
您需要在滚动视图中添加一个 UIView,然后将该视图 top/bottom/leading/trailing 0 添加到滚动视图,然后在视图中添加图像视图并添加图像视图底部约束到那个视图,所以你的滚动视图将正常工作。
详情请参考下图。
您必须将滚动视图放在一个 UIView 中,并将另一个 UIView 放在滚动视图中。
- 外部视图约束:前导、尾随、顶部和底部 - 0
- 滚动视图约束:前导、尾随、顶部和底部 - 0
- 内部视图约束:前导、尾随和顶部到 Superview,宽度与外部视图相等,底部 space 到 -250,高度等于 900(内容的高度)
- 立即设置您的内容大小。
您可以实现如下图截图
//Height Constant of image
@IBOutlet weak var ConstHeight: NSLayoutConstraint!
override func viewDidLoad() {
super.viewDidLoad()
if #available(iOS 11.0, *) {
self.scrollView.contentInsetAdjustmentBehavior = .never
}else{
self.automaticallyAdjustsScrollViewInsets = false
}
//You can change height on here too
self.ConstHeight.constant = 800
}