Verstehen iOS-Animation

Zum Glück, die meisten von dem, was brauchen Sie so weit zu tun, wie iOS Animation besorgt ist bereits in den Rahmen gebaut. Einige Ansicht Eigenschaften (den Mittelpunkt, zum Beispiel) animiert werden, was bedeutet, dass Sie nur die Aussicht sagen müssen, wo ich anfangen und wo enden, und ein paar andere optionale Parameter, und Sie sind fertig.

Der Blick (vor allem die UIView Basisklasse) hat die Funktionalität der Bewegung zu animieren. Um Ihnen eine Kontext, in dem zu verstehen, wie Animation auf dem iPhone und iPad funktioniert, aber Sie müssen verstehen, was unter der Haube vor sich geht, wenn ein Rahmen Pflege der Animation Aufgaben für Sie übernimmt.

Genauer gesagt, müssen Sie ein wenig tiefer in die Ansichten zu vertiefen, ihre Eigenschaften und die Systeme auf dem iPad zu koordinieren.

Sehen Sie Geometrie und Koordinatensysteme

Die Standard-Koordinatensystem in UIKit legt seinen Ursprung in der linken oberen Ecke und hat Achsen, die nach unten und nach rechts vom Ursprungspunkt erstrecken. Koordinatenwerte dargestellt werden unter Verwendung von Gleitkommazahlen, und Sie müssen nicht über den Bildschirm zu sorgen auflösungs die Gerüste kümmern, dass automatisch.

Die Abbildung zeigt dieses Koordinatensystem in Bezug auf die iPad-Bildschirm. Neben dem Bildschirm Koordinatensystem definieren Ansichten ihre eigenen lokalen Koordinatensysteme, die es Ihnen ermöglichen, Koordinaten in Bezug auf die Ansicht zu spezifizieren, anstatt in Bezug auf den Bildschirm.

Das Koordinatensystem auf einem iPad-Bildschirm (mit einer geteilten Ansicht).
Das Koordinatensystem auf einem iPad-Bildschirm (mit einer geteilten Ansicht).

Da jede Ansicht und Fenster seinen eigenen lokalen Koordinatensystem definiert, wann immer Sie zeichnen oder mit Koordinaten zu tun, müssen Sie die Aufmerksamkeit koordinieren, an die zu zahlen System Sie verwenden. Es klingt bedrohlich, aber es ist wirklich nicht so große Sache, nachdem Sie in den Rhythmus bekommen die Arbeit mit den Koordinatensystemen.

Punkte im Vergleich zu Pixel

Okay, also wo ist das hochauflösende Display reinkommen?

In iOS, alle Koordinatenwerte und Abstände Gleitkommazahlen in Einheiten mit angegeben werden bezeichnet als Punkte. Die messbare Grße eines Punktes variiert von Gerät zu Gerät und ist weitgehend irrelevant. Die Hauptsache über Punkte zu verstehen ist, dass sie für die Erstellung eines festen Bezugsrahmen bereitzustellen.

Zum Beispiel ist die Bildschirmabmessungen (Breite x Höhe) für das iPhone 4s 480 x 320 Punkte und für das iPad sind 1024 x 768 Punkte.

Obwohl also ein iPhone 4S mit Retina-Display verfügt über eine 960-by-640-Pixel Auflösung (eine Pixeldichte von 326 Pixel pro Zoll [ppi]) und einem Nicht-Retina-Display verfügt über eine 480-by-320-Pixel Auflösung (163 ppi), so lange wie Sie Ihre Schnittstelle entwerfen, um die Bildschirmgrößen an in den Punkten, Ihre Ansichten werden korrekt auf dem entsprechenden Typ des Geräts angezeigt werden. Die gleichen Grundsätze gelten mit Nicht-Retina und Retina Display auf dem iPad.

Das Mitnehmen hier ist, # 147-Mach dir keine Sorgen über das auflösungs konzentrieren sich auf die Punkte und Sie werden fein # 148.

Eine Ansicht der Größe und Position

Eine Lage des View Objekts in einem Koordinatensystem bestimmt wird, mit dem mitgelieferten Rahmen oder seine Center Eigentum:

  • Das Rahmen Eigenschaft enthält den Rahmen Rechteck, das die Größe und Lage der Ansicht gibt in seine super Ansicht des Koordinatensystems.

  • Das Center Eigenschaft enthält den bekannten Mittelpunkt der Ansicht in seiner Super View Koordinatensystem.

In Ihrer Wanderung können Sie eines Tages begegnen die Grenzen Eigentum. Es ist mit dem Rahmen Rechteck, das die Größe der Ansicht angibt (und dessen Inhalt Herkunft) in der gebundenen Ansicht des eigenen lokalen Koordinatensystem.

Die Abbildung zeigt den Rahmen von der Hauptansicht des iPad (nicht die Bildansicht) mit einem Ursprung x = 0 und y = 20. Seine Größe wird gezeigt, wie width = 320 und height = 460. Der Grund dafür, dass sein Ursprung ist y = 20 ist, dass sein Rahmen in seiner Fensterkoordinaten (seine super Ansicht) ist, und es hat das Fenster mit der Statusleiste zu teilen, die, wie Sie ist vielleicht 20 Pixel hoch ableiten.

Menü