Errata zum Buch »Swift 5 — Das umfassende Handbuch«

Diese Seite enthält Updates und Errata zum Buch »Swift 5 — Das umfassende Handbuch«.

Errata

S. 25 Autom. Ausführung von Code in Playgrounds

Playgrounds werden nur dann automatisch ausgeführt, wenn der Modus Automatically Run aktiv ist (siehe die folgende Abbildung).

Playgrounds wahlweise automatisch oder nur bei expliziter Aufforderung ausführen
S. 42, mehrzeilige Anweisungen

Die Methode heißt appendingPathComponent, nicht stringByAppendingPathComponent. (In den Beispieldateien ist er Code korrekt.)

S. 50, Dictionary-Beispiel

Die Variable hex sollte besser mit let statt mit var deklariert werden.

S. 455 ff (Erscheinungsbild von Segues bzw. des Presentation Controllers)

Mit iOS 13 hat sich das Erscheinungsbild von Apps geändert, wenn Sie mit Segues von einer View in eine andere wechseln. Die vorige View rückt in den Hintergrund, ein winziger Ausschnitt bleibt am oberen Bildschirmrand sichtbar. Das neue Design ist auch im Storyboard in Xcode sichtbar, weswegen die Screenshots im Buch ein wenig anders aussehen als in aktuellen Xcode-Versionen.

In iOS 13 werden durch Segues verbundene Views ein wenig moderner dargestellt

Das neue Verhalten ist z.B. in diesem Artikel auf medium.com ausführlich dokumentiert. stackoverflow zeigt, wie sich bei Bedarf das alte Erscheinungsbild erzwingen lässt. Siehe auch

https://developer.apple.com/videos/play/wwdc2019/103
https://developer.apple.com/videos/play/wwdc2019/224
https://developer.apple.com/videos/play/wwdc2019/808

S. 640, Zweites NSTableView-Beispiel (Beispielcode-Verzeichnis 23/macos-table)

Die vier Variablen der Klasse Country müssen mit dem Attribut @objc deklariert werden, also:

class Country : NSObject {
  @objc var name: String
  @objc var population: Int
  @objc var area: Double
  @objc var capital: String
  ...

Alternativ kann die ganze Klasse mit dem Attribut @objcMembers deklariert werden.

Der Grund: NSTableView kann die Zeilen der Tabelle nur sortieren, wenn die zugeordnet Objekte Key Value Coding-Compliant sind.

Hintergründe: https://stackoverflow.com/questions/44762460, KeyValueCoding in der Apple-Dokumentation

S. 945, App-Store-Artwork für tvOS

Anders als im Buch beschrieben darf das App Icon – App Store (in alten Projekten App Icon – Large) nur in einfacher Auflösung (1x) eingefügt werden, also mit exakt 1280×768 Pixel.

Das App Icon (ehemals App Icon – Small) muss weiterhin in 1x- und 2x-Varianten zur Verfügung gestellt werden, also mit 400×240 Pixel sowie mit 800×480 Pixel.

Siehe auch https://stackoverflow.com/questions/46515644.

S. 1218, Temporäre Verzeichnisse

Die Methode heißt appendingPathComponent, nicht stringByAppendingPathComponent. (In den Beispieldateien sowie im Listing auf S. 1219 ist er Code korrekt.)


Letzte Änderung 9.10.2019

Vielen Dank an alle Leser, die mir Feedback geben!