2016-12-31 1 views
1

Warum löst meine UITapGestureRecognizer nicht meine Funktion für eine UIAlertAction aus? Wenn ich meine App für die iOS Simulator erstellen und ausführen, erkennt mein Image einen Tipp nicht, um die Warnung auszulösen.Probleme beim Tippen auf eine Bildansicht

Irgendwelche Vorschläge würden geschätzt. Danke, schnelle Freunde!


import UIKit 

class ViewController: UIViewController { 

override func viewDidLoad() { 
    super.viewDidLoad() 
    // Do any additional setup after loading the view, typically from a nib. 

    let rect = CGRect(x:20,y:20,width:150,height:100) 
    let imageView = UIImageView(frame:rect) 

    let image = UIImage(named:"image.png") 
    imageView.image = image 

    // imageView.isUserInteractionEnabled = true 
    self.view.addSubview(imageView) 
    let guesture = UITapGestureRecognizer(target: self,action: 
     #selector(ViewController.singleTap)) 
    imageView.addGestureRecognizer(guesture) 
} 


func singleTap() 
{ 
    let alertView = UIAlertController(title: "Heading", message: "Message!", preferredStyle: .Alert) 

    let defaultAction = UIAlertAction(title: "OK", style: .Default, handler: nil) 
    alertView.addAction(defaultAction) 

    self.presentViewController(alertView, animated: true, completion: nil) 

} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 

} 
+0

Setzen Sie 'userInteractionEnabled' in Ihrer Bildansicht auf' true' – Paulw11

Antwort

1

uncommenting diese Zeile im Code

// imageView.isUserInteractionEnabled = true.

könnte funktionieren. Fügen Sie dazu auch

image.multipleTouchEnabled = YES; 
tap.numberOfTapsRequired = 1; 
Verwandte Themen