如何在ios swift中以更大的图像显示警报中的图像

时间:2015-12-18 05:26:45

标签: ios swift uiimageview uialertview

在我的应用程序中,在点击图像时,我想将图像显示为更大的图像。是否可以在警报视图或任何其他方法中执行此操作。

我将UITapGestureRecognizer添加到UIImageView并将UserInteractionEnabled设为真

let imageTap: UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: "imageTap")
self.createrImage.addGestureRecognizer(imageTap)

  func imageTap() {

    let alertView = UIAlertView(title: "Alert", message: "", delegate: nil, cancelButtonTitle: "OK")
    let imvImage = UIImageView(frame: CGRect(x: 30, y: 50, width: 100, height: 100))
    imvImage.contentMode = UIViewContentMode.ScaleAspectFit
    imvImage.image = myImage

    alertView.setValue(imvImage, forKey: "accessoryView")
    alertView.show()
}

当警报显示我看到的是完整尺寸的图片。我想要自定义尺寸。Full Size Image

如果我添加alertView.view,我会收到如下错误:

Image

2 个答案:

答案 0 :(得分:2)

您可以尝试这样的事情

func imageTap() {

    let alertView = UIAlertView(title: "Alert", message: "Alert + Image", delegate: nil, cancelButtonTitle: "OK")
    let imvImage = UIImageView(frame: CGRect(x: 0, y: 0, width: 100, height: 100))
    imvImage.contentMode = UIViewContentMode.Center
    imvImage.image = UIImage(named: "image_name")

    alertView.view.addSubview(imageView)
    //alertView.setValue(imvImage, forKey: "accessoryView")
    alertView.show()
}

答案 1 :(得分:2)

我建议你去寻找比使用alertView更好的解决方案。如果您想要做的是在图像视图上点击时拥有更大的视图,那么有很多好的库可用。

Container

它们非常直接使用并具有可可豆荚。