【问题标题】:UIImage gets clipped when using UiTapGesturerecognizer使用 UiTapGesturerecognizer 时 UIImage 被裁剪
【发布时间】:2017-07-14 19:58:34
【问题描述】:

当用户点击图像时,我正在使用下面的代码全屏显示我的图像。此图像位于 tableview 内。

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)

}

但是当我点击屏幕时,图像呈现全屏,但图像的上下部分总是被剪裁。如何确保图像调整大小并正确适合?谢谢

【问题讨论】:

    标签: swift uiimageview uitapgesturerecognizer


    【解决方案1】:

    你想要.scaleAspectFit

    Fit 将使其适合空间(并在未填充的部分显示背景颜色)

    【讨论】:

    • 这仍然会剪切图像的下半部分。
    • 什么是 UIScreen.main.bounds 和 self.bounds(imageView 的父视图)?
    • 因此图像视图位于 tableview 的单元格中,其约束设置为左右为 0,顶部和底部为单个数字。不确定这是否有帮助,抱歉,第一次这样做。为图像设置纵横比会有帮助吗?
    • 图像具有高度和宽度,因此它们已经具有纵横比。可能会显示更多代码和一些屏幕截图来解释您拥有什么以及您想要什么。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-09-14
    • 1970-01-01
    • 2018-07-08
    • 2011-02-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多