In den UIScrollView-Delegatmethoden gibt es:
scrollViewWillEndDragging:withVelocity:targetContentOffset:
und der letzte Parameter ist:
(inout CGPoint *)targetContentOffset
Ich bin neugierig, was das Inout bedeutet und warum CGPoint ein Zeiger ist. Ich habe versucht, targetContentOffset auf die Konsole zu drucken, aber ich bin mir nicht sicher, wie es auch geht. Jede Hilfe wird geschätzt!
Dies bedeutet, dass der Parameter verwendet wird, um Daten in
zu senden, aber auch Daten out
zu erhalten.
Sehen wir uns eine Beispielimplementierung an:
%Vor% Dieses Muster wird oft mit C-Strukturen verwendet, z. B. CGPoint
, weil sie nach Wert übergeben (kopiert) werden.
Beachten Sie auch, dass inout
dort nicht unbedingt erforderlich ist, aber es hilft dem Compiler, die Bedeutung Ihres Codes zu verstehen und bessere Ergebnisse bei der Optimierung zu erzielen.
Es gibt auch separate in
und out
Annonierungen, aber soweit ich weiß gibt es keine Compilerwarnungen, wenn Sie sie missbrauchen und es scheint, dass Apple sie nicht mehr verwendet.
Tags und Links objective-c ios uiscrollview uiscrollviewdelegate