无法在滚动视图中缩放 UIImage
Can't zoom UIImage in a Scroll View
我试图让用户在结构中缩放我的图像;
ViewController
--> 滚动视图
----->UIImage
我可以滚动我的页面,但不能放大或缩小。我想我在这里遗漏了一些东西。谢谢....
这是我的代码:
import UIKit
import Parse
import ParseUI
class ViewController: UIViewController, UIScrollViewDelegate {
@IBOutlet weak var image: UIImageView!
@IBOutlet weak var label: UILabel!
@IBOutlet weak var scrollView: UIScrollView!
var currentObject : PFObject?
override func viewDidLoad() {
super.viewDidLoad()
self.scrollView.maximumZoomScale = 5.0
self.scrollView.minimumZoomScale = 0.5
self.scrollView.delegate = self
self.scrollView.addSubview(image)
func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {
return image
}
if let object = currentObject {
if let imageName = object["file"] as? PFFile {
imageName.getDataInBackgroundWithBlock({
(result, error) in
self.image.image = UIImage(data: result!)
})
}
label.text = object["fileName"] as? String
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
只需将 viewForZoomingInScrollView
方法移出 viewDidLoad
。
您的代码将是:
import UIKit
import Parse
import ParseUI
class ViewController: UIViewController, UIScrollViewDelegate {
@IBOutlet weak var image: UIImageView!
@IBOutlet weak var label: UILabel!
@IBOutlet weak var scrollView: UIScrollView!
var currentObject : PFObject?
override func viewDidLoad() {
super.viewDidLoad()
self.scrollView.maximumZoomScale = 5.0
self.scrollView.minimumZoomScale = 0.5
self.scrollView.delegate = self
self.scrollView.addSubview(image)
if let object = currentObject {
if let imageName = object["file"] as? PFFile {
imageName.getDataInBackgroundWithBlock({
(result, error) in
self.image.image = UIImage(data: result!)
})
}
label.text = object["fileName"] as? String
}
}
func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {
return image
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
希望对您有所帮助。
我试图让用户在结构中缩放我的图像;
ViewController --> 滚动视图 ----->UIImage
我可以滚动我的页面,但不能放大或缩小。我想我在这里遗漏了一些东西。谢谢....
这是我的代码:
import UIKit
import Parse
import ParseUI
class ViewController: UIViewController, UIScrollViewDelegate {
@IBOutlet weak var image: UIImageView!
@IBOutlet weak var label: UILabel!
@IBOutlet weak var scrollView: UIScrollView!
var currentObject : PFObject?
override func viewDidLoad() {
super.viewDidLoad()
self.scrollView.maximumZoomScale = 5.0
self.scrollView.minimumZoomScale = 0.5
self.scrollView.delegate = self
self.scrollView.addSubview(image)
func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {
return image
}
if let object = currentObject {
if let imageName = object["file"] as? PFFile {
imageName.getDataInBackgroundWithBlock({
(result, error) in
self.image.image = UIImage(data: result!)
})
}
label.text = object["fileName"] as? String
}
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
只需将 viewForZoomingInScrollView
方法移出 viewDidLoad
。
您的代码将是:
import UIKit
import Parse
import ParseUI
class ViewController: UIViewController, UIScrollViewDelegate {
@IBOutlet weak var image: UIImageView!
@IBOutlet weak var label: UILabel!
@IBOutlet weak var scrollView: UIScrollView!
var currentObject : PFObject?
override func viewDidLoad() {
super.viewDidLoad()
self.scrollView.maximumZoomScale = 5.0
self.scrollView.minimumZoomScale = 0.5
self.scrollView.delegate = self
self.scrollView.addSubview(image)
if let object = currentObject {
if let imageName = object["file"] as? PFFile {
imageName.getDataInBackgroundWithBlock({
(result, error) in
self.image.image = UIImage(data: result!)
})
}
label.text = object["fileName"] as? String
}
}
func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? {
return image
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
}
希望对您有所帮助。