2017-07-14 57 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(superview到imageView)? –

+0

因此,图像视图位于tableview中的单元格中,其约束在左侧和右侧设置为0,顶部和底部设置为单个数字。不知道这是否有帮助,对不起,第一次这样做。会为图像设置一个纵横比例吗? – SBCoder