Masthash

#iOSDev

David Bureš
2 hours ago

NEW VERSION OF MLEM IS OUT
This update is big, and there's more coming later! This update addresses these issues:
- New icon by the amazing clay! Stay tuned for more icons, including Pride! In the future, you will be able to choose between lots of icons, and submit your own
- A whole bunch of crashes related to loading communities
- Some posts showing multiple times in the feed
- (Hopefully) accounts being deleted between app launches
- A few issues logging in
#iosdev #lemmy #buildinpublic #mlem

Craigosborne
5 hours ago

Part of me trying to balance indie app dev and family life, means that I spend time on my phone planning and brain storming.
Any apps I should check out to help me?
#buildinpublic #IndieDev #iosdev

Rob Robinson
5 hours ago

Popped to my local Apple Store to pick up a pair of AirPods Pro 2 (to address a sleep disruption challenge) and was politely asked by the chap who served me if my iPhone firmware was up to date. He was surprised to see iOS 17 and watchOS 10 in the wild.

His next question was, “Will you be getting a Vision Pro?”. No, was my simple answer. I never buy first gen and even then I can’t see me spending more than £1500 on something like that for years. Doesn’t mean I’m not impressed or excited about what it can mean. #Apple #iOSDev

An open pair of AirPods Pro 2
Filip Němeček
6 hours ago

The WWDC Labs I was able to attend were super great.

I have so many things to improve design-wise and when it comes to App Store page for @switchbuddy and also Game Widgets.

Particularly the game detail screens should look much better (hopefully) soon 🎉

And UIKit Lab helped me substantially improve my "streching header" implementation with Compositional Layout and fix couple of issues with separators that I had 🙂

#iOSDev

Apple gets to create special UI's for Camera, Photos, Phone etc. But Third Party apps don't. There is no way to check if the feature is enabled and creating an app with hierarchy like a navigation controller, would show 2 back buttons which is even more confusion to the user.

I've submitted feedback and hopefully we can see a change before iOS 17 releases.

#WWDC #iOSdev

I was very happy to see the announcement of Assistive Access in iOS 17 for turning an iPhone into an easier to use device for less tech savvy people and people with disabilities.

But after watching the session I'm disappointed. The feature doesn't seem to have changed from the leaked code in iOS 16 and almost no thought went into it.
#WWDC #iOSdev

David
10 hours ago

I was tearing my hair out trying to work out why I was getting the warning “Accessing a SceneStorage value outside of being installed on a View. This will always return the default value.” when I absolutely was using it on a view.

Apple Engineers (very friendly, we had a nice chat for the rest of the session) in a lab told me it only works in a SwiftUI lifecycle and the error is just wrong :lolsob:

FB12299044

#iOSdev #wwdc #wwdc23

Pedro Piñera
11 hours ago

Any ideas that we’ll explore with @tuist will eventually be implemented by Apple and integrated into Xcode, and that’s fantastic. Because of the size of the Tuist project and community we can be more agile and take more risks when exploring ideas, and in doing so we are pushing the industry forward #Swift #iOSdev

Andriy Kachalo
13 hours ago

Did you notice that there have been no updates to the Combine framework since its introduction in 2019? Is that a sign that by design and purpose, it is the perfect example of a straightforward solution — a reliable building block for modern apps? #iosdev #WWDC23

Ryan Lintott
1 day ago

I'm trying to make a parameter pack version of AnimatablePair but I'm not sure I fully get the repeat each stuff. Also it seems generic types with parameter packs are experimental. Is there a way to test this out without the error?

Gist: https://gist.github.com/ryanlintott/5e065dde4838848f2f6e95323fe26ada
#SwiftUI #iOSDev #WWDC23

A hacky bunch of swift code trying to build AnimatablePack where each pack item conforms to VectorArithmetic and the type itself does as well. Error states Generic types with parameter packs are experimental.
George Yang
1 day ago

I got tricked reading the title of this session this morning, Explore the USD ecosystem. I thought that's weird, why is Apple having a session on US monetary system. 😆 #WWDC23 #iOSDev #Apple

Alex Pretzlav 🥨
1 day ago

#iOSDev #WWDC23

Warning: installing the iOS 16.4 simulator in Xcode 15 Beta breaks playgrounds running on iOS in Xcode 14.3.1. The issue goes away if I delete iOS 16.4 from the Xcode 15 Platforms preference page.

#sandbox_extension_issue_file

Screenshot of an Xcode playground showing a warning icon and the error "Failed to launch process. Failed to compile sandbox profile: sandbox_extension_issue_file: Operation not permitted"
Max Handelman
1 day ago

I'm running into some issues with CloudKit. I've pushed my schema changes to production, changed over my entitlements to point to production, but in my latest TestFlight build, data isn't syncing. It also appears that the CloudKit zone that previously existed in the development schema no longer exists, and there's no CloudKit zone in production. Am I missing something here, or is this all normal?

#cloudkit #coredata #iosdev

iOS Dev Weekly
1 day ago

iOS Dev Weekly, Issue 613 is out. Happy Friday, everyone, and I hope you had an amazing WWDC week! 🚀
https://iosdevweekly.com/issues/613#start

#Swift #SwiftLang #iOSDev #MacDev

Andre Marx
1 day ago

The Stanford course seems to be a very good resource. Started with the first lecture today https://youtube.com/playlist?list=PLpGHT1n4-mAsxuRxVPv7kj4-dQYoC3VVu #ios #dev #iosdev

Ryan Lintott
1 day ago

Pluralization problem(s) made easier by string catalogs! #SwiftUI #iOSDev #WWDC23

A string that reads You have %lld birds in %lld backyards is easily pluralized by making substitutions for birds and yards then supplying strings for one or other values.
Paul Hudson
1 day ago

[Re. @tryswiftworld]
Last chance to join try! Swift Dub Dub - happening today at 1pm EST!! #WWDC23 #iOSDev Talks by @twostraws @vatsal_manot @MvpOhhhDrey @v_pradeilles @zamzampooya @thedevme @dvrzan @elkraneo @jamesdempsey 🐥 🥽 🎉

Register here! https://t.co/H66mDYhVwu #swiftlang #WWDC

More fully Below
1 day ago

Last day of #WWDC2023, last #wwdc Shirt. As you can see, it‘s from 2004. Yes, I‘ve been doing this for a while #iosdev #macdev #apple

Full Queue Developer
1 day ago

For example
```
@StaticMemberIterable
struct Chili {
let name: String
let heatLevel: Int

static let jalapeño = Chili(name: "jalapeño", heatLevel: 2)
static let habenero = Chili(name: "habenero", heatLevel: 5)
}
```

expands to

```
struct Chili {
let name: String
let heatLevel: Int

static let jalapeño = Chili(name: "jalapeño", heatLevel: 2)
static let habenero = Chili(name: "habenero", heatLevel: 5)

static let allStaticMembers = [jalapeño, habenero]
}
```
#WWDC #iOSDev

Full Queue Developer
1 day ago

Introducing `StaticMemberIterable` Swift Macro!

Confidently cover all static members in tests or in your UI. Like CaseIterable, this macro creates an array of all the static members of a type. This is useful when a type has a few instances of itself as static members.

https://github.com/FullQueueDeveloper/StaticMemberIterable

#WWDC #SwiftMacro #iOSDev #SwiftLang #SwiftDeveloper #WWDC23

Pierre
1 day ago

4 of my apps are in the top 100 in their respective categories in at least 1 country 🎉🥳🍾 #iosDev #indieDev

Full Queue Developer
2 days ago

I've used this approach for typesafety of record IDs in my own projects, usually by manually copy-pasting. Now with Swift Macros in Swift 5.9, it's going to be so much easier.
#WWDC #WWDC23 #SwiftMacro #iOSDev #SwiftLang #SwiftDev

Full Queue Developer
2 days ago

When passing strings or integers as IDs, the compiler doesn't tell you if you accidentally used a person ID where a blog post ID. Now with the `UniquelyTypedID`, the compiler will not let you pass the ID of a different model.

And with the power of `ExpressibleByStringLiteral` and `ExpressibleByIntegerLiteral`, very little code will need to change.
#WWDC #WWDC23 #SwiftMacro #iOSDev #SwiftLang #SwiftDev

Full Queue Developer
2 days ago

Introducing UniquelyTypedID, a new Swift Macro!

Use unique types for type-safety when passing IDs around.

Currently supports String, Int, & UUID. The default is UUID.

```swift
struct BlogPost {
@UniquelyTypedID(Int.self) let id: ID
let text: String
}
```

https://github.com/FullQueueDeveloper/UniquelyTypedID

#WWDC #WWDC23 #SwiftMacro #iOSDev #SwiftLang #SwiftDev

Allen+
2 days ago

Card Buddy for iOS is coming along. The porting is going smoother than expected. Still some interactions I gotta work out, like which gestures should go to which actions. #iosdev

Screenshot of iPad app showing multiple cards on a canvas. Each card has text formatted with a header and body and different background colors.
Cihat Gündüz
2 days ago

#SFSymbols 5 adds ~700 new symbols!

Most of them are related to cars & gaming, two areas we know Apple is focusing on.

Notably missing:
#VisionPro or anything related to AR/VR.
I’m sure we’ll get them in 2024 though!

Here are my favorite new symbols:
#WWDC23 #iOSDev #Design

George Yang
2 days ago

Watched the Write Swift macros session, it's gonna take some time and practice to be comfortable with creating macros, but also need to be careful not to overuse it. The goal is to make codebase easier to read, not cryptic. #WWDC23 #swift #iOSDev

George Yang
2 days ago

Is Swift macro template not shipped in the first Xcode 15 beta? #iOSDev #swift #WWDC23

Andre Marx
2 days ago

What’s the best way to learn iOS development as a professional programmer in another language? #ios #dev #iosdev

Jamie Montgomerie
2 days ago

I have an app Xcode project set up with a second library Xcode project as a subproject.

The app target has a static library target from the framework project set as a “Target Dependency” in “Build Phases”, and links the resulting library in “Link Binary With Libraries”. This works great!

I want the iOS Deployment Target to “flow” from the app target ‘into’ the library target, so they’re both the same without having to edit the library target itself. Is this possible?

#xcode #iosdev

More fully Below
2 days ago

Thanks to all the Apple Engineers staffing the labs this year. You were super competent and super helpful!

#wwdc #wwdc23 #iosdev #macdev #apple

George Yang
2 days ago

With this new Swift Observation, do we still need StateObject property wrapper? A Observable model type in SwiftUI view is strong unless declared as weak? #iOSDev #WWDC23

Evan K. Stone
2 days ago

#TipKit looks like an awesome user assistance/discoverability feature. 💬

Looking forward to trying it out! 🌟

#iOSDev #WWDC23 #WWDC2023

Cihat Gündüz
2 days ago

📢 Calling all iOS developers! 🚀

With the announcement of #visionOS, my article on Window Management in SwiftUI 4 just became even more relevant! 🍏👀

Master WindowGroup in SwiftUI now, which is fully supported on #VisionPro:
https://www.fline.dev/window-management-on-macos-with-swiftui-4/?ref=iosdev.space

#iOSDev #SwiftUI #WWDC23

Day 228. Abstracting your interface in a way that can offer multiple input and output mechanisms is key when developing software with an accessibility mindset. #Apple has brought this to the next level in #visionOS.

Check out the session from #WWDC23: https://developer.apple.com/wwdc23/10034

#365DaysIOSAccessibility

#accessibility #a11y #iOSDev

Drawing of the new Apple Vision Pro device. There are arrows coming out of it pointing to different interaction mechanisms, including: eye tracking, gestures, VoiceOver (and its direct gesture mode), Dwell Control, Pointer Control (that works with eyes, hand, wrist and index finger), and Switch Control. Drew Haas, engineer on the accessibility team at Apple says in the WWDC session: Allow multiple avenues for physical interaction. Plan and design for your app to support different inputs. This is the best way to ensure you don’t accidentally exclude people.
Michael Doise
3 days ago

It might have already been said at this point at #WWDC23, but will all iOS or iPadOS apps run on the VisionPro, or must they be made with SwiftUI? #iOSDev

Day 227. #VoiceOver will traverse elements from left-right, and from top-bottom. If for any reason you need to change that order, in #SwiftUI you can change the accessibility sort priority. A higher priority number in the container means it will go first.

https://developer.apple.com/documentation/swiftui/view/accessibility(sortpriority:)

#365DaysIOSAccessibility

#accessibility #a11y #iOSDev

There are five buttons labeled with A, B, C, D, E. The A button is first, B is underneath it, and C, D, and E are under B. The natural order with VoiceOver would be A, B, C, D, E. There is some code that gives C a sort priority of 2, D a sort priority of 3, and E a sort priority of 1. That means that the order will be A, B, D, C, E instead.
Alex Pretzlav 🥨
4 days ago

Am I making a terrible mistake upgrading this ancient iPhone 6s to iOS 15?
I don’t need an iOS 14 test device any more. #iOSDev

Natalia Panferova
4 days ago

Lots of new features in Swift 5.9 that comes with Xcode 15! One of them introduces the use of if/else statements as expressions, simplifying value returns and variable assignments.

I wrote a short post about it: https://nilcoalescing.com/blog/IfElseExpressionsInSwift/

#WWDC23 #Swift #iOSDev

George Yang
4 days ago

Less code to render previews by leverage Swift macros, and preview is also available for UIKit and AppKit. #WWDC23 #Xcode #iOSDev #swiftlang

New preview code leverage Swift macros
George Yang
4 days ago

Xcode 15 added side-by-side live documentation preview! #WWDC23 #Xcode #iOSDev

Xcode 15 with editor on the left and documentation preview on the right
More fully Below
4 days ago

Oh, forgot my T-Shirt for today #wwdc #WWDC23 #iosdev #macdev

Me in.a blue T-Shirt: „Siri, remind me to was this T-shirt”
Mike Piontek
4 days ago

Folks using an Apple Silicon MacBook Air for iOS and Mac dev: any notable complaints? The 14” Pro is just too big for me, barely fits in my bag. I think I’ll be much happier with the Air, just want to make sure I won’t regret it. #iOSDev #MacDev

David Bureš
4 days ago

Is it possible to accomplish this type of header in SwiftUI? Where the text in the header gets smaller up to a point, and sticks to the top of the screen?

#swiftui #iOSdev

Rob Robinson
4 days ago

I know I shouldn’t, but I’m going to anyway. #WWDC2023 #Apple #iOSDev

Screenshot from an iPhone showing the iOS 17 developer beta option to install
Screenshot from an iPad showing the iPadOS 17 developer beta option to install
More fully Below
4 days ago

Is StandBy Mode on iOS working for me? When I see "Welcome to StandBy", swiping does nothing.

Am I holding it wrong?

#wwdc #wwdc23 #iosdev

David Bureš
4 days ago

I’m looking for volunteers to help me test a new Mlem feature. Sign up by responding to this toot!

#iosdev #lemmy #buildinpublic #mlem

Day 226. If your app lets the user share images, consider implementing the possibility for them to add an alt text for the image, so it can be used as an accessibility label when consumed by other users. Twitter or Slack have nice flows for doing this.

#365DaysIOSAccessibility

#accessibility #a11y #iOSDev

The Twitter app is open. It shows how when adding an image in the tweet composing screen, there is a button to alt text that opens another screen that lets you write a description of up to 1000 characters. Then, if a tweet has an image with alt text, it shows an ALT badge in the bottom left corner that can be selected to open a bottom sheet with the image's alt text.
Marcin Krzyzanowski
4 days ago

SwiftData Best Practice 👇 for large projects and scalable architecture #iosdev #swift

Natalia Panferova
5 days ago

In Xcode 15 we can access colors and images stored in asset catalog via autogenerated static properties, for example Color(.myGreen) or even Color.myGreen 🤩 No more string literals 🎉 #WWDC23

And this works for older deployment targets too, not just iOS 17!

There is more information about this new feature in my post: https://nilcoalescing.com/blog/Xcode15Assets

#SwiftUI #iOSDev #Xcode #Swift

Vision Pro looks really cool! Diving into the more technical bits seems like the platform will take care of all the complicated and boring stuff about 3D (as one would expect) leaving all kinds of powerful APIs for creating apps. Can't wait to write some code as soon as macOS Sonoma has finished downloading. 🚀

#wwdc #wwdc23 #visionPro #iOSDev #SwiftDev
More fully Below
5 days ago

Is there a secret to downloading Xcode 15? All I get is a Xcode_15_beta.xcdownloadmanifest , but no download …

#wwdc #wwdc23 #iosdev #macdev #Xcode

Jay :verified_gay:
5 days ago

If you were to buy a secondary phone for betas, what would you go with? My trusty iPhone 8 Plus is officially in retirement and I need a new beta device. (still tempted to put the beta on my daily and let the iPhone 8 run iOS 16 as long as it will live)

#wwdc23 #iOSBeta #iosdev #swift #swiftui

Marcin Krzyzanowski
5 days ago

it looks like ExtensionKit has landed in #iOS #iosdev cc @mattiem

More fully Below
5 days ago

Even the Developer App is in maintenance mode? #wwdc #wwdc23 #iosdev #macdev

More fully Below
5 days ago

Getting ready. Quiztime: Do you know from which WWDC my T-Shirt is?
#wwdc #WWDC23 #apple #iosdev #wwdc2023

Me Wearing a black T-Shirt „Introducing Longhorn“
David Bureš
5 days ago

NEW VERSION OF MLEM IS OUT:
In this version:
- Migrated the backend from WebSockets to HTTP
- Removed some intentional crashes, so it should be crashing much less now (hopefully)
- Did some slight optimizations to make the networking work faster. Most notable posting comments and creating posts should be much faster now

IF YOU HAVE ACCOUNTS ADDED, REMOVE THEM AND RE-ADD THEM! Otherwise every feed will show „No posts to be found“

#iosdev #lemmy #buildinpublic #mlem

Evan K. Stone
5 days ago

Happy #WWDC Day! 🎉🚀😎🤓

#iOSDev #WWDC23 #WWDC2023

Day 225. Support both orientations, if possible. I know not even iOS itself does it, but it hasn't always been like that. You'll create a more robust UI that will be easier to port to iPadOS. And especially, don't force your users to rotate their devices.

#365DaysIOSAccessibility

#accessibility #a11y #iOSDev

The Youtube app is playing a video. When going fullscreen it forces you to change the orientation of your device. This is not recommended. It could instead go fullscreen in portrait and then give the user a choice to rotate the device in landscape mode if they wish to do so.
Charles Perry
6 days ago

Apple and iOS friends: I won’t be with you at WWDC, but I hope you all enjoy getting together again after such a long hiatus. There will be a lot of tech stuff going on, but don’t lose sight of what’s really important: Meeting new people and renewing existing friendships. Have fun! #WWDC #WWDC2023 #iOSDev

Kuba Suder
6 days ago

In case this is useful to someone, I have a repo with #SwiftUI generated interfaces that I've been updating semi-regularly since #Xcode 11, so I can see the diffs between different versions (there are separate branches for macOS and watchOS): https://github.com/mackuba/swiftui-headers #Swift #iOSDev #MacDev

Gian Frangiamore
6 days ago

If anyone knows of any companies that are looking for an iOS developer please let me know!

I was recently made redundant and can start pretty much asap. I’m based in the UK but also happy to work remote.

#iOSDev #SwiftUI #Swift

David Bureš
6 days ago

MLEM HOTFIX OUT NOW:
- Fixed crashing when tapping on the "Welcome Reddit refugees" post once and for all (hopefully)! Thanks to https://github.com/mormaer
- Voting on comments now more seamless (and doesn't make the comments reload)
- Fixed bug where upvoting a downvoted post would show the incorrect score (off by 1)

#iosdev #lemmy #buildinpublic #mlem

Day 224. "We have one job, and that's to make our apps work. And if you are not implementing accessibility features, you are forgetting about making it work for a lot of people" @novallswift. Couldn't have said it better!

https://twitter.com/NovallSwift/status/1328387659744505856?s=20

#365DaysIOSAccessibility

#accessibility #a11y #iOSDev

Drawing of Novall Khan from her presentation in the WWDC's Platforms State of the Union session. Twitter handle is @NovallSwift. She is an Engineering Manager for Accessibility at Apple. There's a quote she said: "We have one job, and that's to make our apps work. And if you are not implementing accessibility features, you are forgetting about making it work for a lot of people"

Day 223. If your watch app has good VoiceOver support, chances are you'll also have good Assistive Touch support. But an improvement you can make is to implement a quick action (triggered with a double pinch) when there is a main action you can perform.

#365DaysIOSAccessibility

#accessibility #a11y #iOSDev

Apple Watch - Assistive Touch: Quick Action. The camera app is open on the Apple Watch. A prompt appears saying that you can "Take Photo" with a double Pinch. To support something like this in your app, you can use the .accessibilityQuickAction modifier with the .prompt style as a parameter.
🎙Waiting for Review Podcast
1 week ago

S3E29: 'twas the week before DubDub 🥽

We catch up about @daniel’s presentation at AppDevCon in Amsterdam!

@davidgarywood has been hard at work getting GoVJ to work with MIDI controllers.

And as WWDC '23 is iminent, we figured we should talk about some of what we think may be on it's way for the Apple eco system too 🔥

https://www.waitingforreview.com/s3e29

#Podcast #iOSDev #IndieDev #WWDC #WWDC23

Day 222. Assistive Touch for the #AppleWatch works like magic. It lets you use your watch with gestures with the hand of the same arm you are wearing your watch on. No need to use your nose! If you don't have it on, is because you don't know about it.

More on how it works in this video from #Apple: https://youtu.be/869--vIUIv4

#365DaysIOSAccessibility

#accessibility #a11y #iOSDev

Apple Watch - Assistive Touch, Cheat Sheet. You can turn on Assistive Touch on the Apple Watch or the Watch app on iOS. Once on, a single pinch moves the cursor forward. Double pinch moves it backward. A single clench selects the focused item. A double clench opens the Action menu with important options like pressing the crown.

🚨 IT’S HERE 🚨

Söka is now available on the App Store!

Embark on an extraordinary journey of self-discovery and adventure with Söka, the groundbreaking iOS app that brings your wildest dreams to life.

Whether you yearn to explore breathtaking destinations, witness awe-inspiring performances, or achieve significant milestones, Söka is your trusted companion in turning aspirations into unforgettable realities.

Download for free: https://trysoka.app/download

#iOSDev #IndieDev #Travel #SwiftUI

Day 221. It is useful to know these #VoiceOver gestures to activate/deactivate Screen Curtain, pause/resume VoiceOver, easily simulate a long press for opening context menus, or quickly move the cursor to the screen's first or last elements.

#365DaysIOSAccessibility

#accessibility #a11y #iOSDev

VoiceOver Cheat Sheet number 4. Five gestures. First one: Triple-tap with three fingers turns on/off Screen Curtain (which turns the screen off but still lets you use your device with VoiceOver). Four taps if you use VoiceOver together with Zoom. Second: Single tap with two fingers pauses/resumes VoiceOver. Third: Triple-tap with one finger simulates a long press (useful for opening context menus). Fourth: Single tap with four fingers in the top half of the screen moves the focus to the first element of the screen. Fifth: Single tap with four fingers in the bottom half of the screen moves the focus to the last element of the screen.

Day 196. Once you learn some basic gestures with #VoiceOver, it is very important to master the Rotor. It is very useful to also know some more power user gestures like the Magic Tap or the Escape gesture.

More on the Rotor: https://iosdev.space/@dadederk/109491976454728208
Magic Tap: https://iosdev.space/@dadederk/109678705836709212
Perform Escape: https://iosdev.space/@dadederk/109689823700132752

#365DaysIOSAccessibility

#accessibility #a11y #iOSDev

5 gestures from VoiceOver. There is a Twitter app open on the TwitterA11y profile screen. Rotating two fingers on the screen, like rotating a dial, will show you the rotor. In this case, a tweet is focused and VoiceOver will say: “Actions”. Then, you can swipe down to interact with the selected rotor option. VoiceOver will say in this example: “Reply”. Sometimes, you’ll need a double tap to confirm. In this case, doing so will open the screen to reply to that tweet. Back to the first screen, if you double tap with two fingers, that’s called the Magic Tap. It is meant to execute the most important interaction in the screen. In this case it will open the screen to compose a tweet. If you scrub with two fingers, like drawing a Z, it is called the Escape gesture. It should bring the user back to the previous screen. In the example, back to the TwitterA11y profile screen.
Hey #iOSDev folks, does anyone have/know of an app that can create and compress GIFs from mov/mp4 videos?

I'm looking for something that can work offline on iOS/iPadOS.

Thanks 🙏

#swift #swiftdev #video #gifies
Michael Brown
2 weeks ago

PSA: as of iOS 16.4 a `WKWebView` is no longer inspectable by default, meaning you won't be able to debug it using Safari dev tools. You now have to explicitly enable it: https://webkit.org/blog/13936/enabling-the-inspection-of-web-content-in-apps/
#swift #xcode #iosdev

Day 195. When using VoiceOver on a device without a home button it can first be confusing how you can do a few things, including going to Home from an app, or opening the App Switcher, Control Center, or Notifications. Here's a quick guide for you.

#365DaysIOSAccessibility

#accessibility #a11y #iOSDev

VoiceOver's Cheat Sheet number two. There is an iPhone with the Twitter app opened by the TwitterA11y profile screen. Moving your finger up from the bottom till you hear two tones and feel one vibration brings you to Home. Moving your finger up from the bottom till you hear three tones and feel two vibrations brings you to the App Switcher. Moving your finger down from the top till you hear two tones and feel one vibration opens Control Centre. And moving your finger down from the top of the screen till you hear three tones and feel two vibrations brings you to Notifications.

Day 194. Let's quickly remember a few of VoiceOver's most important gestures that will let you do some of the most basic actions including selection, interacting, navigating, and scrolling.

And Apple has a great video: https://youtu.be/qDm7GiKra28

#365DaysIOSAccessibility

#accessibility #a11y #iOSDev

VoiceOver Cheat Sheet, number 1. Showing 5 basic VoiceOver gestures. The first one is tap, which selects an element and VoiceOver announces it. In the example, the MobileA11y profile screen in the Twitter app selects the more options button, so VoiceOver says "More Actions, button". The second example is a double tap (anywhere on the screen), which means interacting with the selected element. In this case, because the more actions button is selected, it shows a modal screen with more actions. The third gesture is swipe right, which moves the cursor to the next element. In the example, VoiceOver moves the cursor to the profile picture and says "Profile Picture, button". The fourth one is swiping left, which would move the cursor to the previous element, from the more actions button to the search button. VoiceOver would say "Search, button". The fifth gesture is moving three fingers up, which will scroll the screen down.