Ich habe dieses Problem mit ScrollView-Zoom. Es gibt viele Artikel darüber, aber irgendwie kann ich keine richtige Erklärung, Tutorial oder Code-Schnipsel finden.iPhone: wie zoomen nur das Bild von scrollview
Ich habe Vollbild Scrollview und in einem Fullscreen-Bildansicht. Innerhalb der Bildansicht lade ich AspectFit-Bilder (sie können entweder vertikal oder horizontal sein, horizontale haben oben und unten schwarzen Raum). Wenn ich Zoom mache, zoome ich nicht nur das Bild, sondern auch die Umgebung (der Rest der Bildansicht). Wenn ich den Simulator während des Zooms rotiere, geht das Bild außerdem in die obere rechte Ecke, anstatt wie beim Start zentriert zu sein. Wenige Pixel gehen sogar aus dem Bildschirm.
Ich möchte wirklich nur Bild anstelle der gesamten Bildansicht zoomen oder zumindest das Bild zentriert die ganze Zeit, wenn gezoomt.
Jede Hilfe willkommen ..
wo genau soll ich es sagen? :) Ich ändere nur Bilder mit imgView.image = [UIImage imageNamed: whichNext]; Ich initiiere kein Rect mit Bild. Ich ändere einfach den Inhalt von imageView. – yosh
Sie würden dies in layoutSubviews setzen - es ist in Ordnung, wenn Sie den Rahmen des UIImageView beim Erstellen nicht initialisieren, nimmt er die Größe des Bildes an, mit dem Sie ihn initialisieren (wenn Sie ihm ein anderes Bild mit einer neuen Größe geben Sie sollten '[sizeToFit]' aufrufen, um die Größe zu ändern. Wie Sie oben sehen können, ändern Sie auch in diesem Fall nicht seine Größe; Sie ändern nur seinen Ursprung, damit er sich zentriert, wenn Sie herauszoomen. – Ertebolle