Bei der Arbeit mit SwiftUI kommt man des Öfteren in eine Situation, in der eine View mehrere State-Properties benötigt. Ein typisches Beispiel sind Formulare, mit denen man verschiedene Informationen auf einmal einsieht und bearbeitet. Da diese am Ende zusammengefasst werden sollen, ist es notwendig, dass die zugrundeliegende View jede einzelne Information kennt und direkt darauf zugreifen kann. Ein konkretes Beispiel deutet das folgende Listing an: struct AddressView: View { @State private var name = „“ @State private var street = „“ @State private var postalCode = „“ @State private var city = „“ @State private var country = „“ var…
Sie sind da! Nach der erstmaligen Ankündigung auf der diesjährigen WWDC veröffentlichte Apple inzwischen nun seine ersten Mac-Modelle mit hauseigenen Prozessoren. Der M1 getaufte Chip ist nun Teil des MacBook Air, MacBook Pro 13“ und Mac mini. Chip mit Power Um ehrlich zu sein, war ich zunächst skeptisch, ob Apples eigene Prozessoren im Mac gegen die von Intel ankommen. Ja, iPhone und iPad (die schon seit Jahren mit Apples eigenen Prozessoren bestückt sind) sind der Konkurrenz in Sachen Leistung und Performance enorm voraus. Doch schafft es Apple gegen Intel? Eine Firma, die schon so lange in diesem Segment unterwegs ist…
Überraschend kündigte Apple letzte Woche ein neues Programm für App-Entwickler an. Mit dem App Store Small Business Program richtet sich Apple an all jene Entwickler, die mit ihren Apps bis zu einer Million Dollar Umsatz im Jahr erzielen. Das Besondere an diesem neuen Programm: Apples Provision sinkt darüber von 30% auf gerade einmal 15%! Einmal tief Luft holen … Das ist … WOW, so zumindest einer meiner ersten Gedanken. Wie viele von euch wissen, störe ich mich persönlich (im Gegensatz zu diversen Schreihälsen im Internet da draußen) nicht an Apples Provision, auch nicht an der bisherigen Höhe von 30%. Dennoch…
Bindings spielen in SwiftUI eine enorm wichtige Rolle. Mit ihrer Hilfe geben wir eine Referenz eines Status an eine View weiter. Von dieser View aus kann die zugehörige Information ausgelesen und verändert werden. Zudem sind Bindings enorm flexibel und lassen sich mithilfe eines entsprechenden Initializers (init(get:set:)) ganz den eigenen Bedürfnissen entsprechend erzeugen. Das Problem mit Optionals Viele Views in SwiftUI setzen auf Bindings. Nehmen wir als Beispiel TextEditor. Die View benötigt ein Binding vom Typ String. Was aber, wenn der zugrundeliegende Status, den man als Binding nutzen möchte, ein Optional ist? Dazu ein Beispiel: Dieser Code lässt sich nicht kompilieren,…
Auch in diesem Jahr veranstaltet heise erneut die heise MacDev. Es handelt sich dabei um eine Entwicklerkonferenz, die speziell auf die Programmierung für Apple-Plattformen ausgerichtet ist. Diesjährige Themen sind unter anderem SwiftUI, Augmented Reality, GPS und die plattformübergreifende Entwicklung. Auch ich bin wieder mit einem Vortrag am Start. In Status und SwiftUI – so geht es richtig! erläutere ich die Bedeutung und Funktionsweise des Status in SwiftUI. Wie wirkt er sich auf die View-Aktualisierung aus? Welche Statusvarianten gibt es? Und wann entscheide ich mich für welche davon? Teilnehmer dieses Vortrags sollten bereits Grundkenntnisse in SwiftUI mitbringen. Zusätzlich biete ich auch…
Modifier sind ein essenzieller Bestandteil von SwiftUI. Mit ihrer Hilfe führt man Manipulationen an Views durch und passt so deren Erscheinungsbild und Funktionsweise an. Um das bestmögliche und insbesondere auch korrekte Verhalten aus dem Einsatz von Modifiern zu ziehen, muss man deren eigentliche Funktionsweise verstehen. Genau darauf möchte ich in diesem Artikel eingehen und zeigen, warum deshalb auch die Reihenfolge der Modifier-Aufrufe sehr entscheidend sein kann. Modifier generieren neue Views Zunächst einmal ist das Verhalten von Modifiern recht simpel. Sie nehmen die View, auf der sie aufgerufen werden, und manipulieren sie auf die Art und Weise, die dem jeweiligen Modifier…
Endlich ist es soweit: Seit diesem Montag ist mein SwiftUI-Buch mit dem Titel Einstieg in SwiftUI im Handel erhältlich. Die Veröffentlichung möchte ich an dieser Stelle noch einmal zum Anlass nehmen, um euch das Buch und dessen Inhalte vorzustellen und um ein weiteres Mal Danke zu sagen. Inhalte des SwiftUI-Buchs Wie der Titel suggeriert, gibt euch Einstieg in SwiftUI einen grundlegenden Überblick über Apples neues UI-Framework. So erfahrt ihr auf insgesamt 261 Seiten, welche verschiedenen View-Elemente euch zur Verfügung stehen und wie ihr Navigationsstrukturen in SwiftUI aufbaut. Auch die Funktionsweise des Status wird ausführlich erläutert, ebenso wie die Integration von…
GridItem-Größe In den beiden vorangegangenen Artikeln dieser Reihe (siehe Link-Übersicht am Ende) ging es um die Grundlagen zum Einsatz der neuen Grid-Views in SwiftUI. Nun werfen wir einen genaueren Blick darauf, wie man die Größe eines einzelnen Grid-Items konfigurieren kann. Die Größe einer GridItem-Instanz definiert man über einen entsprechenden Parameter namens size. Der basiert auf der Enumeration GridItem.Size, die die folgenden drei Optionen mit sich bringt: Am einfachsten zu erklären ist fixed(_:). Dieser Option übergebt ihr die gewünschte Größe in Punkten, die das zugehörige Grid-Item besitzen soll. Braucht ihr etwas mehr Flexibilität, ist flexible(minimum:maximum:) eine spannende Option. Wie die beiden…