Frage

Was ist die beste Praxis für die Einstellung Zoomfaktor eines Bildes innerhalb IKImageView über NSSlider?

Ich konnte einen Schieber entweder auf Zoom in binden oder Verkleinern Wirkung eines IKImageView. Offensichtlich, was ich würde lieber sehen, ist ein einzelner Schieber beide diese Aktionen zu steuern. Am Besten, wenn Bild wird nach jeder Änderung des Schiebers aufgefrischt (kontinuierlich, auch wenn eine Maustaste ist noch nicht freigegeben).

War es hilfreich?

Lösung

Diese Demo erklärt einiges: ImageKitDemo

Insbesondere dieser Ausschnitt ist das, was ich gesucht habe:

- (IBAction) zoomSliderDidChange:(id)sender
{
    [addProductPhotoImageView setZoomFactor:[sender floatValue]];
}

Andere Tipps

Die Bindungen Art und Weise sowohl den Zoomfaktor der IK Bildansicht und den Wert des Schiebers auf die gleiche Eigenschaft des Controllers zu binden wäre. Wenn der Schieber den Wert der Eigenschaft ändert, wird die Bildansicht benachrichtigt werden und wird den neuen Wert aus dem Controller gehen bekommen.

Ein Vorteil dieser Art und Weise ist, dass Sie mehr Möglichkeiten der Ein- und Auszoomen und der Wert in dem Schieber geht nicht abgestanden hinzufügen. Für ein Beispiel, fügt hinzu, wenn IKImageView Pinch-Zoom (oder wenn es mich es bereits hat nicht über Multi-Touch auf meinem Mac), kann der Benutzer auf diese Weise vergrößert und der Schieber wird automatisch aktualisiert. Das wird nicht mit der IBAction Lösung geschehen.

Ein weiteres Beispiel wäre Vergrößern und Verkleinern Menübefehle werden (vielleicht mit ⌘ + und ⌘- Tastenkombinationen), die Sendeaktion Nachrichten an der Steuerung. Ihr Controller reagieren würde durch Erhöhen oder Verringern der Wert der Eigenschaft (unter Verwendung einer Set-Methode es implementiert). Mit Bindungen sowohl die Bildansicht und der Schieber wird kostenlos aktualisieren. Ohne Bindungen, würden Sie explizit müssen sowohl auf die Bildansicht sprechen und den Schieber, ein sagten seinen Zoomfaktor und die andere zu aktualisieren seinen Schieber zu aktualisieren.

Ein drittes Beispiel wäre ein „Zoomfaktor: X%“ Anzeige in einer Ecke des Fensters. Mit Bindungen, kann dies ganz gleich kostenlos aktualisieren, wie der Benutzer das Bild zoomt: Bewegen des Schiebers Daumen, Kneifen / unpinching das Bild oder einen Menüpunkt drücken. Ohne Bindungen, würde dies noch sein eine andere Sache, die Sie reden müssen in Ihren (mindestens drei) Wechsel der Zoom-Wert Aktionsmethoden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top