Ich habe eine UITableView
in meiner Klasse mit einer benutzerdefinierten UITableViewCell
mit einer UIImageView
innen.UIGestureRecognizer Griff berührt in UITableView
ich brauche die Berührung auf dieser UIImageView
detektieren eine benutzerdefinierte Methode zu handhaben (handleSingleTouch:
) und ich brauche die -didSelectRowAtIndexPath
zu rufen, wenn die Zelle ausgewählt ist.
So habe ich eine UIGestureRecognizer
meiner TableView
auf diese Weise:
UIGestureRecognizer *GEST=[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(handleSingleTouch:)];
[self.myTable addGestureRecognizer:GEST];
GEST.delegate=self;
[GEST release];
[GEST setCancelsTouchesInView:NO];
[GEST setDelaysTouchesEnded:NO];
Es ist der Konflikt: jedes Mal, wenn die UIImageView
die tableview
die GestureRecognizer
starten Sie das Verfahren berührt wird, sondern auch die didSelectRowAtIndexPath
genannt wird.
Jemand kann die gestureRecognizerMethod
anrufen ohne die didSelectRowAtIndexPath
anrufen?
dies könnte eine nette und pratic Lösung sein .. aber was ist mit Leistung und Speicher zu sparen, wenn Sie N Elemente zu laden haben ??! –
@Denis - Sorry für die * sehr * späte Antwort. Leistung und Speicher sollten kein Problem sein, da die Ansichten recycelt werden, und daher geschieht diese Einrichtung nur beim ersten Mal (wenn ich mich nicht irre). –