2015-09-18 3 views
1

Я пытаюсь, чтобы пользователи меняли изображение в структуре;Невозможно увеличить UIImage в виде прокрутки

ViewController -> Scroll View -----> 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() 
    } 
} 

ответ

4

Просто переместите метод 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() 
    } 
} 

Надеется, что это помогает.

+0

Я знал, что у меня нет чего-то основного. :) Большое спасибо, я тратил часы на это и извиняюсь за исправление основной проблемы. Я просто новичок. – fuzunspm

+0

Рад помочь вам .. :) –

Смежные вопросы