I was in a Clubhouse room where someone mentioned the best resource to refer to a developer for implementing accessibility in their app.
I had that question a few years back working on Rocket.Chat iOS app to implement VoiceOver, and the answer was — it’s scattered all around the internet.
So here’s an attempt to gather all the resources I’ve referred to, both in UIKit and SwiftUI.
Note — This is the first iteration of the post, and I will add more resources as I get stumble upon them. …
I’ve been using SwiftUI for a while and recently worked on a watchOS app where I also tried to make it accessible.
When I first started on the app, I forgot to add accessibility labels for the system images, and I found it later while auditing it in the Accessibility Inspector.
SwiftUI doesn’t provide any initializer for Image
to have the label as a parameter nor something to ignore it for accessibility purposes. So let’s create one!
I wasn’t sure what to name my custom view because AccessibilityImage
seemed too long, while A11YImage
didn’t sound ideal. …
Today I sat down to create a sidebar on Gradient Game for iPadOS 14 and the upcoming macOS Big Sur.
My main concern was passing the same data model for both TabView
on iOS devices and SidebarView
on iPadOS & macOS.
Sharing some simplified code snippets for the same.
The data for an individual tab should consist of its title, the name of the SF Symbol, and the destination View
. Also, I want a function that would return an array of this data.
With this, if I’ve to add a new tab or update/remove the existing ones, I just…
It was my first ever technical phone interview for the role of a software engineering internship. That too scheduled with Apple, Cupertino.
The first round was scheduled a few days after my fifth-semester exams. For that, I was doing LeetCode day and night and got the subscription to only focus on questions from Apple. I cleared the first coding round, which was a question similar to a level of LeetCode Medium.
A few hours later, I got the confirmation that I would proceed to the second and the final round. At this point, I had done hundreds of LeetCode easy…
I remember going through the WWDC website to watch the keynote on my MacBook Air.
I wished I could watch it live someday. So, during the intro music, I started exploring the site to understand how the developers get a ticket for it. It was $1,600 for a developer, based on a lottery system. Ummm, no. I scrolled down and found this on the homepage.
“Scholarships — Students and STEM organization members can apply to receive a conference ticket, lodging, and one year of membership in the Apple Developer Program.”
Ahh, this is what I am looking for!
But now…
This summer, Apple announced widgets for iOS 14 that you can have on your home screen alongside your existing apps. Widgets help you to personalise the screen with glanceable relevant data upfront.
This article covers the foundational adaptation of creating a good VoiceOver, Voice Control, and adaptive display experience with your widgets using SwiftUI.
It’s refreshing to see how easy it is to make your application accessible using SwiftUI. Adding an accessibility label to a settings icon is as simple as:
.accessibilityLabel(“Settings“)
Developers can take advantage of the straightforward APIs and implement these in their apps.
And also widgets.
So…
This is the second part of my article 8 Amazing SwiftUI Libraries to Use in Your Next Project, which I wrote after getting a substantial response on the first.
If you have started working with SwiftUI or using it for your hobby projects, these six libraries can help you step up your game.
Most of the libraries are available via Swift Package Manager.
StepperView is a SwiftUI iOS component for step indications.
LazyVGrid and LazyHGrid layouts in SwiftUI were recently announced during WWDC 2020, and I’m so excited to share with you a simple tutorial to get you started with them!
Here’s the demo project to start with.
Note: Using these APIs requires macOS 10.14.5+ and Xcode 12+.
When you open the project, explore the 18 pleasing landscapes in Assets.xcassets
, named as noaa[number]
for the sake of simplicity. Shoutout to the National Oceanic and Atmospheric Administration (NOAA) for such beautiful pictures.
From the latest documentation, a LazyVGrid is a “container view that arranges its child views in a grid that grows vertically…
This is the second part of my article “7 Awesome Open Source SwiftUI Projects To Inspire You,” which I wrote after getting a substantial response on the first.
If you’ve started working with open source or using it for your hobby projects, here are seven amazing projects to take inspiration from.
This is a full-featured Animal Crossing helper application entirely in SwiftUI.
I have been using the basic operators since high school in C++. So, I won’t discuss what is already in the documentation, rather focus on the implementation of few of the operators.
Operators can be classified into three type, unary, binary, or ternary —
!stack.isEmpty { // perform some action }
carryOver = sum % 10
(number > 0) ? number : 0
We are aware that the assignment operator is used to assign (initialize or update) values. …