我正在使用Swift 4在Xcode 9中编写应用程序,并且我在视图中添加了一个UIScrollview,用于显示高度为3030像素的jPeg。我已将scrollview添加到我的视图中,并在IB中的Outlets中分配了委托。我已将名为scrollView的IBOutlet附加到UIScrollview,并将带有jPeg的UIImageView添加到UIScrollview。我已将UIScrollView的大小设置为375W和620H,然后将UIImageView设置为375W和3030H。这应该完成Interface builder中的工作。
在Controller中,我已将UIScrollViewDelegate添加到类中,并将以下代码添加到ViewDidLoad
//scrollView.delegate = self
scrollView.contentSize = CGSize(width: 375, height: 3040)
我已经注释掉了代表行,就像我在IB中所做的那样。当我运行应用程序时,屏幕会显示图像,但是当我尝试滚动时,它几乎不会滚动多个屏幕。我错过了什么?
答案 0 :(得分:1)
您需要在滚动视图中添加 UIView ,然后将该视图顶部/底部/前导/尾随0添加到scrollview,然后在视图中添加图像视图并将图像视图底部约束添加到该视图,所以你的滚动视图将正常工作。
请参阅以下图片了解更多详情。
答案 1 :(得分:0)
您必须将滚动视图放在UIView中,将另一个UIView放在滚动视图中。
答案 2 :(得分:0)
您可以按照以下图片实现屏幕截图
//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
}