Fading UIView ermöglicht das Anzeigen von Untersichten

8

Ich habe ein UIScrollView , das verschiedene Subviews enthält ( UIImageViews , UILabels und standard UIViews ). Einige der UIImageViews sind teilweise durch andere UIViews abgedeckt.

Wenn ich jedoch UIScrollView ausgeblendet habe, werden die teilweise abgedeckten Teile von UIImageViews für den kurzen Moment der Animation freigelegt.

Ich möchte in der Lage sein, die Bildlaufansicht und alle Inhalte gleichzeitig in derselben Animation auszublenden - d. h. keine der teilweise verdeckten Bilder zu zeigen.

Wenn das nicht möglich ist, kann ich immer ein UIView über allen anderen Steuerelementen hinzufügen und es von Alpha 0 bis 1 ausblenden, um alles auszublenden, aber ich bin mir sicher, dass es eine Möglichkeit gibt, eine vollständige Überblendung auf einem auszuführen Ansicht und alle ihre Unteransichten.

Ich habe es versucht:

%Vor%

Und ich habe es versucht:

%Vor%

Aber ich habe es immer noch nicht geknackt. Irgendwelche Ideen?

    
theDuncs 10.10.2012, 15:21
quelle

3 Antworten

13

Dies geschieht aufgrund der Arbeitsweise des Compositors. Sie müssen die Rasterung auf der Ebene der Ansicht aktivieren, wenn Sie sie ein- / ausblenden:

%Vor%

Sie sollten das wahrscheinlich nur für die Dauer der Animation aktivieren, da es zusätzliche Speicher- und Grafikverarbeitungszeit benötigt.

    
Mike Weller 10.10.2012, 15:38
quelle
4

Mike's Antwort ist die richtige und er verdient alles dafür. Zur Veranschaulichung könnte es so aussehen:

%Vor%

Wenn Sie also scrollViewResults verwenden, wird es wie folgt aufgerufen:

%Vor%     
Rob 10.10.2012 18:08
quelle
-2

Haben Sie versucht, mit UIView Klassenmethoden + animateWithDuration: * (verfügbar auf iOS 4 und +)

Wie:

%Vor%     
Emmanuel 10.10.2012 15:35
quelle