[英]Zooming with UIScrollView does not work
伙計們,圖片出現在View上,UIView用ScrollView嵌入EmbedIn,Outlets很好,圖片出現了,但是當我嘗試縮放時什么也沒發生,我將非常感謝任何建議,或者使用Buttons +和-或示例事件滑塊(如果可以)。 我已經完成了在互聯網上找到的所有內容,但是它不起作用,這是我的代碼:
class TakenPhotoPreviewViewController: UIViewController, UIImagePickerControllerDelegate, UINavigationControllerDelegate, UIScrollViewDelegate {
@IBOutlet weak var scrollViewOutlet: UIScrollView!
@IBOutlet weak var imageViewOutlet: UIImageView!
var takenImage: UIImage = UIImage()
let picker = UIImagePickerController()
override func viewDidLoad() {
super.viewDidLoad()
imageViewOutlet.image = takenImage
picker.delegate = self
scrollViewOutlet.delegate = self
setForZoom()
setForZoom方法在哪里
func setForZoom () {
imageViewOutlet.frame = CGRect(origin: CGPoint.zero, size: takenImage.size)
scrollViewOutlet.addSubview(imageViewOutlet)
scrollViewOutlet.contentSize = takenImage.size
scrollViewOutlet.clipsToBounds = false
let scrollViewFrame = scrollViewOutlet.frame
let scaleWidth = scrollViewFrame.size.width / scrollViewOutlet.contentSize.width
let scaleHeight = scrollViewFrame.size.height / scrollViewOutlet.contentSize.height
let minScale = min(scaleWidth, scaleHeight);
scrollViewOutlet.minimumZoomScale = minScale;
scrollViewOutlet.maximumZoomScale = 4.0
scrollViewOutlet.zoomScale = minScale;
我也有:
private func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {
return imageViewOutlet
}
乃至
func scrollViewDidEndZooming(_ scrollView: UIScrollView, with view: UIView?, atScale scale: CGFloat) {
}
導致有人遇到問題,因為這沒有寫出來。...請有人知道為什么它不起作用嗎?
從您的應用程序中刪除這段代碼,然后嘗試使用它。 到目前為止,您正在使用圖像大小來限制ScrollView內容大小。
scrollViewOutlet.contentSize = takenImage.size
這個問題可能是minScale
,您設置的zoomScale
的scrollView
來minScale
。 minScale
存在問題,無法更改,因此您無法更改任何內容。
問題是否解決了?嘗試刪除此行代碼。
scrollViewOutlet.zoomScale = minScale
順便說一句,您應該注意變量的名稱。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.