Ich legte eine kleine UIView
in einem UITableViewCell
.iOS: Klicken Sie auf eine Ansicht in einem TableCellView
- Bei einem Klopfen auf so
UIView
, würde Ich mag ein Popup öffnen. - Bei einem Klopfen außerhalb so
UIView
, ich möchte was ausführen es in derUITableView
„DidSelectRowAtIndexPath“ Funktion definiert ist.
Was es im Moment geschieht, ist, dass, wenn ich auf die Ansicht klicken beiden Dinge passieren: das Popup geöffnet und die „DidSelectRowAtIndexPath“ Funktion trigged wird.
Wie kann ich sicherstellen, dass, wenn ich auf dieser UIView
die „DidSelectRowAtIndexPath“ klicken Funktion ausgelöst wird nicht?
aktuelle Implementierung:
definierte ich ein UITapGestureRecognizer
für die UIView
in meiner benutzerdefinierten UITableViewCell
Klasse.
let tapGesture = UITapGestureRecognizer(target: self, action: #selector(MyCustomTableViewCell.clickOnHelp(_:))) myClickAreaUIView.addGestureRecognizer(tapGesture)
kann ich Super schlagen die UIView zu einem UIButton und behandeln die Berührung mit einem touchUpInside auf die Schaltfläche ändern? – ddb
Wo und wie gehen Sie mit der Ansicht auf dem Bildschirm um? – Miknash
Ich denke, es gibt eine Möglichkeit, Ansichten einzurichten, um ihre Berührungsereignisse nicht weiterzuleiten. Ich denke Buttons tun das standardmäßig, aber Dinge wie Views nicht. – nhgrif