For builders who develop iOS purposes in SwiftUI, one of the in style linters has been SwiftLint. SwiftLint enforces the fashion information guidelines which can be typically accepted by the Swift neighborhood.
Though vastly used, there a bit recognized algorithm that may examine for accessibility points as you develop! So what are these guidelines and the way will we flip them on? Let’s dive in!
Accessibility Guidelines
SwiftLint comprises two easy accessibility guidelines:
- Accessibility Trait for Button – All views with faucet gestures added ought to embrace the .isButton or the .isLink accessibility traits
- Accessibility Label for Image – Photos that present context ought to have an accessibility label or needs to be explicitly hidden from accessibility
The kicker right here, the principles are OFF by default. So to be able to correctly implement these two guidelines, you must flip them on!
Turning on the Guidelines
In your SwiftUI venture, find your *.swiftlint.yml
file. Contained in the .yml choose in to the principles beneath opt_in_rules
add the next:
opt_in_rules: # some guidelines are solely opt-in
- empty_count
- missing_docs
- accessibility_label_for_image
- accessibility_trait_for_button
As soon as performed, rebuild the venture and the accessibility guidelines ought to now be working!
Instance use circumstances
You might be asking your self, “that is solely two guidelines what affect might this actually have?”. Nice query!
Cell accessibility consciousness continues to be comparatively new. There are nonetheless not a variety of growth groups which can be conscious that cellular accessibility options even exist on iOS. The end result, is essentially the most primary points are pushed into purposes.
One prime instance, utilizing textual content or a non-native management and including a faucet gesture to it.
Textual content("Study extra")
.onTapGesture(rely: 1) {
print("tapped")
}
.foregroundColor(.white)
If the Accessibility Trait for Button rule is activated, it could catch there’s a faucet gesture tied to this and counsel so as to add a trait of .isButton
.
Now, ought to the developer simply use a local management reminiscent of a button? Completely! However that’s a complete different matter we are able to dive into at one other time. For now, this situation is caught and will probably be fastened by the developer earlier than launch!
Advantages of Accessibility Guidelines
Together with these two guidelines has many advantages that may vastly enhance your growth crew, together with:
- Catching points as you construct your SwiftUI content material
- Constructing accessibility data in your builders
- Implementing good coding practices (Button vs Textual content)
Nevertheless, the largest one is the simplicity of use. If you’re a crew that can’t decelerate and are struggling to get accessibility into the each day growth, utilizing these two guidelines with SwiftLint is a good place to begin to a a lot bigger path to accessibility in your cellular purposes!