2016-07-17 23 views
1

Ich habe iOS seit einigen Jahren entwickelt. Also ich habe mit nur UI-Komponente gearbeitet, die Apple zur Verfügung gestellt hat, wie UITableView, UIPicker, UISegmentController usw. Nun möchte ich die Möglichkeit bekommen, jedes UI-Element zu erstellen oder mein eigenes zu steuern und entsprechende Animationen bereitzustellen. Was muss ich lernen, um das mit Swift oder Objective C zu machen? Bitte geben Sie die Ressource an?Wie erstelle ich eine benutzerdefinierte Ansicht oder Steuerung mit Animation für die iOS App?

Antwort

1

Das Erstellen von benutzerdefinierten Steuerelementen ist eine Sache und das Animieren einer Ansicht ist eine andere Sache. Was die Animation betrifft, können Sie diese tutorial verfolgen, um die zugrunde liegenden Konzepte zu verstehen.

Es gibt jedoch einige sehr einfache Dinge, die Sie wissen müssen, um die Animationen auszuführen.

  1. Verwenden Sie die Animation api der UIView Klasse
  2. Verwenden Sie die Eigenschaften wie frame und transform einer Ansicht
1

Es gibt zwei Ebenen, auf denen Sie dies tun können:

  1. Kern Animation Ebenen (tief und Spaß, weil FREIHEIT!): Dies ist die Ebene ba cking, in das alle UIViews und alles in UIKit hineingezogen wird. In jedem UIView-Element können Sie beliebig viele Core Animation Layers und Objekte erstellen. Core Animation verfügt über eigene Zeichnungsmethoden und eine einzigartige Steuerung dieser Dinge auf niedrigem Niveau. Es ist fast wie eine Spielmaschine ohne eine Spielschleife. Sie können benutzerdefinierte Formen zeichnen, sie auf alle möglichen phantasievollen Arten animieren und alles tun, was Sie sich vorstellen können.

  2. UIView Customization (flach, aber breit, eingeschränkt): Sie alles in einem UIView ziehen kann, und mit so vielen UIViews alles tun, wie Sie kreative UI Ideen zum Ausdruck bringen müssen. Du bist nicht so begrenzt (kreativ), wie du vielleicht denkst, aber du bist eingeschränkt darin, wie du es machst, indem du UIViews als Konstrukt verwendest, in das du alles machst.

Die Salbei Beratung der modernen Programmierung ist, dass jeder für seine eigenen Zwecke besser ist und Probleme ... bla bla bla ...

Die tiefere Wahrheit ist, dass Core Animation Lernen wirklich Spaß macht, zu befreien und verrät Ihnen mehr darüber, wie Apples Frameworks funktionieren, als alles, was Sie in der iOS-Welt der iOS-Welt lernen können.

Es gibt zwei lange Wege, um dorthin zu gelangen. Nick Lockwoods Buch über Core Animation, während alt (relativ) immer noch genau ist. Überfliegen Sie es einfach, damit Sie ein tolles Gefühl dafür bekommen, was Core Animation ist und was Sie tun können ...

Dann kommen Sie zu den Tiefenbüchern von Matt Neuberg, in denen er Ansichten und ihre Mechanik in einem Detail diskutiert, das unerreicht ist , überall:

+0

Matt ist auch irgendwo hier und mürrisch wie mürrisch wird. Aber das ist in Ordnung. Er hat das Recht verdient, mürrisch zu sein. Bis zu einem Punkt. – SKOOP

1

Sie könnten damit beginnen, indem Sie eine Unterklasse von UIControl erstellen.Da UIControl selbst nur eine Unterklasse von UIView ist, könnten Sie behandeln wie Sie behandeln würden UIView, aber unter Ausnutzung der UIControl 's spezielle Funktionen, wie die Ziel-Aktion-Mechanismus und Verwendung beginTrackingWithTouch:withEvent: zu verfolgen Berührungen.

Wie für Animation ist Core Animation es. iOS bietet einige wirklich zeitsparende Out-of-the-Box-Funktionen wie animated properties, wo so ziemlich die Animation ohne jede Anstrengung von Ihrer Seite gemacht wird. Jedoch sind custom animations nicht schwierig zu implementieren.

Viel Glück!