提问者:小点点

如何在Swift中为UIImageView对象分配操作


当用户点击它时,我正在尝试将UIImageView分配给一个操作。

我知道如何为UIButton创建操作,但我如何模仿UIButton的相同行为,但使用UIImageView


共3个答案

匿名用户

您将需要一个UITapGesture识别器。要设置使用它:

override func viewDidLoad()
{
    super.viewDidLoad()

    let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(imageTapped(tapGestureRecognizer:)))
    imageView.isUserInteractionEnabled = true
    imageView.addGestureRecognizer(tapGestureRecognizer)
}

@objc func imageTapped(tapGestureRecognizer: UITapGestureRecognizer)
{
    let tappedImage = tapGestureRecognizer.view as! UIImageView

    // Your action
}

(您也可以使用UIButton并为其分配图像,无需文本,只需连接IBAction

匿名用户

您需要在您的UIImageView中添加一个手势识别器(对于点击使用UITapGesture识别器,对于点击和按住使用UILongPressGesture识别器)。

let tap = UITapGestureRecognizer(target: self, action: #selector(YourClass.tappedMe))
imageView.addGestureRecognizer(tap)
imageView.isUserInteractionEnabled = true

并实现选择器方法,例如:

@objc func tappedMe()
{
    println("Tapped on Image")
}

匿名用户

您可以将UITapGesture识别器添加到imageView中,只需将一个拖到Storyboard/xib中,从imageView中Ctrl拖动到手势识别器,然后从手势识别器中Ctrl拖动到Swift-file以生成IBAction