回答編集履歴

1 言い回し。

fuzzball

fuzzball score 15866

2016/09/30 10:11  投稿

# おまけ
AVFoundationにScaleAspectFit後のサイズを求める関数(AVMakeRectWithAspectRatioInsideRect)があるので、これを利用してみます。
AVFoundationにScaleAspectFit後のサイズを求められる関数(AVMakeRectWithAspectRatioInsideRect)があるので、これを利用してみます。
```swift
(前略)
import AVFoundation
(中略)
       // frameの値を設定する.
       myImageView.contentMode = .ScaleAspectFit
       //幅はScrollViewと同じ、高さは仮に無限大としておく
       myImageView.frame = CGRectMake(0, 0, CGRectGetWidth(descriptionScrollView.frame), CGRectGetHeight(CGRectInfinite))
       print("frame(tmp)=", myImageView.frame)
       //ScaleAspectFit後のサイズを求める
       myImageView.frame.size = AVMakeRectWithAspectRatioInsideRect(myImage.size/*画像サイズ*/, myImageView.frame/*fitさせたい領域*/).size
       print("frame(fit)=", myImageView.frame)
(中略)
       // ScrollViewにcontentSizeを設定する.
       descriptionScrollView.contentSize = myImageView.frame.size //シンプルに!
(後略)
```

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る