Ich habe Label in der UIView hinzugefügt und seine Steckdose erstellt, dann habe ich mit Hilfe von UITapGestureRecognizer die Funktionalität hinzugefügt, aber wenn ich tippe oder klicke in das Etikett. Beschriftungstext ändert sich nicht. Ich suchte nach der ähnlichen Frage und ich bekam die Antwort auch, was ich geschrieben habe, aber der Etikettentext ändert sich nicht. Code in Swift 3.0 geschrieben. Hier ist der Code, den ich geschrieben habe -Können wir UILabel Tap Gesture hinzufügen?
import UIKit
class testingViewController: UIViewController {
@IBOutlet weak var testLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
let tap:UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(showDatePicker))
tap.numberOfTouchesRequired = 1
tap.numberOfTapsRequired = 1
testLabel.addGestureRecognizer(tap)
testLabel.isUserInteractionEnabled = true// after adding this it worked
// Do any additional setup after loading the view.
}
func showDatePicker(){
print("testing")
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destinationViewController.
// Pass the selected object to the new view controller.
}
*/
}
überprüfen Interaktion mit dem Benutzer für das Label setzen. siehe Antwort von Duncan C – Krunal
@KrunalBhavsar userInteraction wurde im StoryBoard aktiviert, aber als ich den Code hinzugefügt habe, hat es funktioniert warum so – Ronit
Bitte überprüfen Sie, ob es eine andere Ansicht (transparente Ansicht) über das Läppen Ihres Labels gibt. Können Sie Ihren Quellcode (Projekt) teilen, wenn er nicht vertraulich ist? – Krunal