2017-07-14 3 views
1

ユーザーが画像をタップすると、下のコードをフルスクリーンで表示しています。このイメージはテーブルビュー内にあります。UiTapGesturerecognizerを使用しているときにUIImageがクリップされる

func imageTapped(_ sender: UITapGestureRecognizer) { 

    let imageView = self.moreImageView 
    let newImageView = UIImageView(image: imageView?.image) 
    newImageView.frame = UIScreen.main.bounds 
    newImageView.backgroundColor = .black 
    //newImageView.sizeToFit() 
    newImageView.contentMode = .scaleAspectFill 

    newImageView.isUserInteractionEnabled = true 
    let tap = UITapGestureRecognizer(target: self, action: #selector(dismissFullscreenImage)) 
    newImageView.addGestureRecognizer(tap) 
    self.addSubview(newImageView) 

} 

しかし、私が画面をタップすると、イメージはフルスクリーンで表示されますが、イメージの上部と下部は常にクリップされます。イメージのサイズが変更され、正しくフィットすることを確認するにはどうすればよいですか?おかげ

答えて

0

あなたがしたい.scaleAspectFit

フィットが、それは空間内に収まるよう(と記入していない部分の背景色を表示)されます

+0

まだそのクリップ画像の下半分。 – SBCoder

+0

UIScreen.main.boundsとself.bounds(imageViewのスーパービュー)とは何ですか? –

+0

したがって、イメージビューはテーブルビュー内のセルに位置し、その制約は左と右で0、上と下で一桁の数字に設定されます。それが助けになるかどうかわからない、初めて申し訳ありません。画像のアスペクト比を設定するのが助かりますか? – SBCoder

関連する問題