Ich habe eine Ansicht mit einem CATiledLayer Hintergrund. Ich möchte die sichtbaren Kacheln aus dieser CATiledLayer-UIView übernehmen und sie einer anderen Ansicht als CALayer-Hintergrund hinzufügen, wodurch das sichtbare Bild in einer anderen UIView, die CATiledLayer nicht verwendet, erneut erstellt wird.CATiledLayer zu CALayer
Der Grund, warum ich dies tun möchte, ist, dass ich diese zweite UIView verwenden werde, um den Effekt der Aktualisierung der CATiledLayer-gestützten UIView zu maskieren - dies erzeugt derzeit ein Flimmern, wenn alle Kacheln neu geladen werden.
Das Problem ist, ich bin mir nicht ganz sicher, wie ich das tun würde. Irgendwelche Ideen?
Sie will also eine bewusst gekachelte Ansicht nehmen und eine normale Ansicht macht die gefliesten zu verbergen ...? Vielleicht eine verrückte Frage, aber warum war es zu Beginn gefliest? –
@PauldeLange - Wenn meine gekachelte Ansicht neu geladen wird, flackert sie, wenn die Kacheln neu gezeichnet werden. Es wird eine UIView unter der gekachelten Ansicht geben, die eine direkte Kopie der darüber liegenden Kacheln sein wird. Wenn die Kacheln neu geladen werden, wird die Ansicht von unten für einen Bruchteil einer Sekunde angezeigt, wenn die Kacheln erneut geladen werden, wodurch der Flickeffekt gestoppt wird. Von dem, was ich sagen kann, ist dies eine ziemlich übliche Praxis für Grafikprogramme - Verwenden eines Grafikpuffers, um die Auswirkungen des Renderns von neuem Inhalt oben zu glätten. –
Wenn Sie die Hintergrundansicht schneller als die Kacheln rendern können, warum haben Sie Kacheln? beeinflussen -> Effekt übrigens. –