Achtung: Diese Seite enthält Partner- und Werbe-Links. Daher ist diese Seite im Gesamten als Werbeanzeige zu verstehen!
Seit ich einen TouchBar-MacBook besitze versuche ich, die TouchBar auch möglichst sinnvoll einzusetzen. Nach ersten Versuchen mit BetterTouchTool habe ich mir schnell auch die Dokumentation von NSTouchBar sowie andere Projekte wie " MacBook Pro touch bar runner game tutorial" oder Touch Bar Lemmings angeschaut. Mein Interesse war geweckt und ich habe mir vorgenommen, mich neben NSTouchBar auch noch in SpriteKit und die Programmiersprache Swift einzulesen.
Ich weiß gar nicht mehr konkret, wie ich auf diese Idee kam. Aber ich wollte eine TouchBar-Anwendung schreiben, die durch die vor allem durch Tinder bekannte "Wisch"-Geste eine bequeme Funktion ausführen soll. In der Mittle soll ein Kreis sein, um den Herzen kreisen. Schiebt der Nutzer den Kreis auf die linke oder rechte Seite der TouchBar, soll dem Nutzer entsprechend ein positives oder negatives Feedback gegeben, sowie die auszuführende Aktion hervorgehoben werden. Die Herzen sollen dabei folgen, einigermaßen schön animiert sein und auch von der Beschleunigung der Geste beeinflusst werden.
Von der Tatsache abgesehen, dass die Richtung der Animation allgemein nicht stimmt, habe ich ein für mich zufriedenstellendes Szenario implementiert. Der Einfachheit halber habe ich das Touch Bar Lemmings-Repository geforkt und meine Tinder-App darauf aufgebaut. Das hat mir viel Arbeit gespart, da die Vorlage schon die gesamte Einrichtung der TouchBar sowie die Umgebung für die Spiele-Engine umgesetzt hat.
Ich habe etwa vier Stunden in das Lernen von SpriteKit sowie Swift investiert und muss sagen, dass sich Apple vor allem bei Swift sehr viel gedacht hat. Für mich als jahrelanger Objective-C-Entwickler war der Umstieg zwar aufgrund der Syntax schwierig, durch meine Erfahrung aus der Javascript-Welt aber dennoch irgendwie vertraut. Der Umgang mit SpriteKit sowie NSTouchBar war nicht zuletzt auch aufgrund meiner Vorerfahrung in der iOS-Spieleentwicklung mit COCOS2D kein größeres Problem. Die internen APIs sind verständlich, intuitiv und machen Spaß.
Der absolut nicht aufgeräumte Test-Code für meine Tinder-TouchBar kann natürlich auf GitHub heruntergeladen werden.