![Seb Vidal Profile](https://pbs.twimg.com/profile_images/1417933554932146176/O36-0MLR.jpg)
Seb Vidal
@SebJVidal
Followers
5K
Following
6K
Media
1K
Statuses
6K
iOS Developer π¨π½βπ» Working on Duet, a journal for couples π Maker of Snippet, a code sharing tool for macOS πΈ
Manchester, England
Joined June 2012
@ParkerOrtolani It's giving such CloudKit x Craig Federighi "and it's Free! . (with limits)" vibes π
1
6
548
Fun detail in light modeβ¦ The selected chip doesnβt just change its text colour, thereβs actually a second label masked to the chip resulting in this cool transition. Exact behaviour of the Music app. Was an interesting challenge to recreate using UIKit ππ½
Spent some time reverse engineering Apple Music and Podcast's search chips UI π. Interestingly, there's no public or private API to achieve this, _and_ both Music and Podcasts have different implementations of the identical interface π« . Anyone interested in an article on this?
8
12
429
I guess when Apple created this video for the SF Symbols page they forgot that "laugh.svg" was a private symbol. π. Shoutout to @zats for finding these ππ½
6
4
304
This got more interested that I anticipated, so I've put together a demo of how to use Apple's internal OnBoardingKit framework. Goes without saying that, because you have to link against a private framework, this should never go anywhere near production code π GitHub linkππ½
Interesting. looks like Apple has an internal onboarding framework that they use to build these "What's New" screens across many of their apps. π. OnBoardingKit (yes, with a capital B) π Worth having a poke around the runtime headers:
7
11
274
Quick Swift/UIKit tip. π‘. If you're wrapping a UIKit class, like UIScrollView, in a UIView subclass but still want the public interface of your subclass to include that of a scroll view, @dynamicMemeberLookup is your friend!
3
17
222
So this got a lot more interest than I anticipatedβ¦ BUT! We have a solution π±. Big thanks to @zats for doing most of the heavy lifting. Our combined solution allows you to replicate (almost?) exactly the behaviour you see in apps like iMessage. Gist:
9
6
213
Private API of the day I guess? You can achieve this two line large title in your navigation bar very easily with this extension of UINavigationItemβ¦
I wonder how many private versions of UINavigationBar Apple hasβ¦ thereβs also this multi-line one that I donβt understand how itβs NOT public.
7
14
203
This. Whenever people ask why I havenβt made the switch yet, this is the *first* thing that comes to mind. Performance. I donβt care about Metal shaders, scroll view visual effects, or matched geometry if a *simple* List canβt perform like itβs actually running on modern.
My biggest problem with SwiftUI right now is how terribly under-performant it is. Appleβs most powerful iOS device ever, powered by the cutting-edge M4 chip, canβt do this layout animation without horrible choppiness and hangs.
13
7
193
Another day, another private API. π₯±. This time, adding a placeholder string to a UITextView. Has been possible for a long time with UITextField, but for some reason not (publicly) with the text view counterpart π€·π½ββοΈ. No more subclassing UITextView and manually showing/hiding a
10
13
196
Was even simpler than that. Just a single _UICustomViewMenuElement - no palette menu required. If you don't specify a primaryActionHandler, the custom view menu element isn't selected on tap down, so the menu isn't dismissed.
Looks like a _UICustomViewMenuElement using the new (in iOS 17) palette style menu? Gonna have to have a crack at recreating thisβ¦.
3
11
179
Making a start on this today π€ Spent a couple of hours tidying up the code during the week and actually found a much better way of doing it. Stay tuned!
Spent some time reverse engineering Apple Music and Podcast's search chips UI π. Interestingly, there's no public or private API to achieve this, _and_ both Music and Podcasts have different implementations of the identical interface π« . Anyone interested in an article on this?
6
2
163
This was the only natural evolution of this interaction π΅βπ«π€€
Took some time, but hereβs a Tint Colour settings screen for an upcoming app Iβm working on ππ. The animation comprises of _actual_ UIKit components, so dark mode, dynamic type, etc. are fully supported. Also, couldnβt resists using the private variableBlur CAFilter! π
7
8
149
Yesterday was not the day we got variable blur APIs in the iOS SDKβ¦ π
Today could be the day we get variable blur APIs in the iOS SDKβ¦ #WWDC24 π.
4
3
136