Ich habe eine Unterklasse von UIView
, und hinzugefügt, um die touchesBegan
und touchesEnd
Methoden ...touchesBegan mit Verzögerung
In touchesBegan
ich die backgroundColor
von weiß auf grün self.backgroundColor = [UIColor greenColor]
durch die Verwendung ... in der touchesEnd
setze ich die Farbe zu weiß.
Es funktioniert aber sehr langsam. Wenn Sie auf die Ansicht tippen, dauert es 0,5 - 1,0 Sekunden, bis ich die grüne Farbe sehe.
Die Auswahl einer Zelle in einem UITableView
ist viel schneller.
hm, könnte auf eine implizite Animation beim Festlegen von Eigenschaften wie backGroudn Farbe zurückzuführen sein. Kannst du prüfen, ob die Berührung zu spät ist oder nur der Farbwechsel? – Volker
Diese UIView von Ihnen ist zufällig in einem UITableView oder einem UIScrollView? –
@Volker Schönes Denken, aber "UIKit" deaktiviert implizite Animationen der zugrunde liegenden 'CALayer's (http://stackoverflow.com/questions/4749343/when-exactly-do-implicit-animations- take-place-in-ios)), also denke ich, das ist nicht das Problem. Ich würde nach "delaysContentTouches" einer Superview oder ähnlichem suchen. – Alladinian