我有一张图片,当有人点击图片时,我希望它可以转到我的网站
我使用tapGesture将图像转换为大按钮,但是我不知道该怎么做,是当用户点击图像时,我希望该应用将用户带到我的网站
最佳答案
这取决于您要在何处打开链接。两种标准方法是在应用程序内提供open the URL in a UIWebView,或告诉系统在移动Safari浏览器中打开链接(这会将您的应用程序发送到后台)。
在我看来,这是您想要的第二种行为。您可以通过告诉UIApplication打开URL来实现它,如下所示:
@IBAction func linkTapped(sender:UITapGestureRecognizer) {
if let url = NSURL(string: "http://stackoverflow.com/") {
UIApplication.sharedApplication().openURL(url)
}
}
编辑:
有关如何按照您所描述的方式进行设置的更多信息:在
viewDidLoad
中,设置手势识别器,如下所示:let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: "linkTapped:")
self.yourImageView.addGestureRecognizer(tapGestureRecognizer)
self.yourImageView.userInteractionEnabled = true
确保
yourImageView
的IBOutlet已正确连接。然后,只需将原始答案中给出的代码作为方法添加到包含您的viewDidLoad
方法的同一类中即可。如果手势识别器触发了,它现在应该在linkTapped:
方法中执行代码并打开URL。编辑2:
并且由于它实际上适合大约10行代码,因此这里以最小的视图控制器类作为示例实现。
class ViewController: UIViewController {
@IBOutlet var myImageView: UIImageView! //Check if connected correctly!
override func viewDidLoad() {
super.viewDidLoad()
let tapGestureRecognizer = UITapGestureRecognizer(target: self, action: "linkTapped:")
myImageView.addGestureRecognizer(tapGestureRecognizer)
myImageView.userInteractionEnabled = true
}
func linkTapped(sender:UITapGestureRecognizer) {
if let url = NSURL(string: "http://stackoverflow.com/") {
UIApplication.sharedApplication().openURL(url)
}
}
}
关于ios - tapGesture hyperLink快速,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31887683/