2016-03-18 12 views
0

私はviewDidLoadに私は単に持っている非常に単純なプロジェクトを持っている:すべてのように私には思えるなぜ私のUIScrollViewはその中のUIImageViewをズームしませんか?

func viewForZoomingInScrollView(scrollView: UIScrollView) -> UIView? { 
    return iv 
} 

func scrollViewDidScroll(scrollView: UIScrollView) { 
    centerMedia() 
} 

func centerMedia() { 
    var left = CGFloat(0.0) 
    var top = CGFloat(0.0) 

    if sv.contentSize.width < sv.bounds.size.width { 
     left = (sv.bounds.size.width - sv.contentSize.width)/2.0 
    } 

    if sv.contentSize.height < sv.bounds.size.height { 
     top = (sv.bounds.size.height - sv.contentSize.height)/2.0 
    } 

    sv.contentInset = UIEdgeInsets(top: top, left: left, bottom: top, right: left) 
} 

は、私がズームするために持っている必要がありますする必要があります

sv = UIScrollView(frame: view.frame) 
    sv.delegate = self 
    view.addSubview(sv) 

    let iv = UIImageView(image: UIImage(named: "earth-small.jpg")) 
    sv.addSubview(iv) 

    sv.contentSize = iv.image!.size 
    print(iv.image!.size) 
    sv.minimumZoomScale = 0.1 
    sv.maximumZoomScale = 10.0 
    sv.zoomScale = 1.0 

    centerMedia() 

そして、それに加えて

。しかし、ズームインまたはズームアウトすると、イメージビュー(500pt x 300ptの画像を持つ)は決して拡大または縮小しません。

私は間違っていますか?

+0

let iv = UIImageView(イメージ:UIImage(名前: "earth-small.jpg")) - >メソッド全体でのみイメージビューを保存していませんか? –

+0

@JonasFranz私はあなたに1つ借りています。 AHHHH。とても簡単。 –

答えて

1
let iv = UIImageView(image: UIImage(named: "earth-small.jpg")) 

クラス全体を宣言する必要があります。 (コメントを参照)

関連する問題