Accessibility

RSS for tag

Make your apps function for a broad range of users using Accessibility APIs across all Apple platforms.

Accessibility Documentation

Posts under Accessibility tag

126 Posts
Sort by:
Post not yet marked as solved
0 Replies
425 Views
One client has invited me as an admin of the own Apple developer's account to manage the apps. One more client wants to add me as an admin of their Apple Developer's account but he can't do that he is getting the below message. Enter an email address that has never been associated with an Apple ID. Please give me a solution so that my client can add my email account as an admin to manage to Apps.
Posted
by
Post not yet marked as solved
0 Replies
1.4k Views
I got the first AirPods Pro Beta Firmware installed, version 4A305j. I used to use my AirPods Pro in Headphone Accommodation mode, with amplification on in Transparency mode — like basic hearing aids. With this new firmware update, I no longer have headphone accommodation settings available in transparency mode — only phone and media. Is this expected or a bug? I filed as a bug, but I'm deeply curious.
Posted
by
Post not yet marked as solved
0 Replies
251 Views
We had an ADA audit where it was called out that the MKMapView lacks ADA compliant contrast: It's referring to the MKMapView's default text for place descriptions. Is there a way to change this? I don't see any properties we could use to override it. Here's the description of the issue found: The contrast ratio between text and its background is not at least 4.5:1. Current Behavior: Text content (Points of interest etc.) and its background on the maps lack 4.5:1 contrast ratio Expected Behavior: Text content (Points of interest etc.) and its background on the maps must meet 4.5:1 contrast ratio
Posted
by
Post not yet marked as solved
2 Replies
712 Views
Hi there! I published an auto clicker app on the Mac App Store about 7 months ago with no issue. However, I just submitted a new update and was binary rejected for the following reason: "Your app uses public APIs in an unapproved manner, which does not comply with guideline 2.5.1 of the App Store Review Guidelines. Specifically, the app uses Accessibility to keep the mouse active, which is not the intended use of the Accessibility API." I'm currently using a CGEvent.post() to click automatically, and this requires Accessibility permissions to work. Is there an approved, official way to programmatically click for users? There are tons of auto clickers on the Mac App Store, so I'm a little confused as to why I'm being rejected now. Thank you so much! Here's the code snippet that actually clicks the mouse: if AXIsProcessTrusted() == true { var ml = NSEvent.mouseLocation ml.y = NSHeight(NSScreen.screens[0].frame) - ml.y var location = CGPoint(x: ml.x, y: ml.y) var downClick = CGEvent(mouseEventSource: nil, mouseType: mouseTypeDown, mouseCursorPosition: location, mouseButton: mouseButton)! var upClick = CGEvent(mouseEventSource: nil, mouseType: mouseTypeUp, mouseCursorPosition: location, mouseButton: mouseButton)! downClick.post(tap: .cghidEventTap) upClick.post(tap: .cghidEventTap) }
Posted
by
Post not yet marked as solved
0 Replies
617 Views
HI! I am developing a service for fans of movies and TV series. One of the features of the service is to view lists of sources where you can watch the film or series you're interested in. This includes AppleTV. Is it possible to access the AppleTV API with the ability to search for movies by title or by tmdbid or imdbid? For example for "Cars 2" I'd like to get a link https://tv.apple.com/us/movie/cars-2/umc.cmc.4qadx6arnfd0e5la03oodc4j1
Posted
by
Post not yet marked as solved
0 Replies
320 Views
Hello everyone,  I am currently on the development of an app dedicated to deafblind people.  In order to do that, I must allow the use of the application at the same time to a blind person and a sighted person.  The chosen strategy consists of systematically running the application under Voice Over, and activating or deactivating the "DirectTouch" option depending on whether it is the sighted or blind person using the application.  Things generally work fine, except when it comes to editing a TextEditor area. Indeed, as soon as the focus of Voice Over is found on the text zone to be modified, the DirectTouch option is automatically deactivated from all the other elements of the view, without us being able to do anything about it.  In order to spotlight this problem, I have made a simpler app, where there only are : a toggle button, a push button and an editable text area. All of them have the modifier : .accessibility(addTraits: AllowsDirectInteraction).  When the app launches, we are well able to interact with the 2 buttons via DirectTouch under voice over.  But as soon as we want to modify the editable text zone, the DirectTouch is deactivated on the whole view, including the 2 buttons on which it worked just before.  To restore it, you must then remove the keyboard which allows you to write in the text area. And DirectTouch is automatically reactivated.  Attached is the code of our "simple" application which allows us to illustrate the problem: VStack {  //Button to resign first responder from the TextEditor  Button {                  UIApplication.shared.resignFirstResponder()  } label: {                  Text(“ResponderResignButton”)  }    //Toggle to observe the correct functioning of directInteraction  Toggle(isOn: $isToggleOn) {  Text(“TestToggle :”)  }                  //Editable text area declaration  TextEditor(text: $text)  }  .accessibility(addTraits: AllowsDirectInteraction) //DirectInteraction apply to all app elements  Do not hesitate to ask me questions if everything is not clear, I thank you in advance for your feedback. Even if you do not have the exact solution to my question, any information will be welcome no matter what happens  kindly  Bisa
Posted
by
Post marked as solved
1 Replies
854 Views
When a user selects a new tab in a TabView via VoiceOver, the focus remains at the tab button, which is not an ideal user experience. With UIKit I could use: UIAccessibility.post(notification: .screenChanged, argument: UIView) to update focus; however, I can't figure out how to do something similar using SwiftUI. Is there an analogue or work around using SwiftUI, or does these ability just not exist yet?
Posted
by
Post not yet marked as solved
0 Replies
537 Views
I have a WKWebView and I would like to add accessibility. The only problem is when the page loads up the first time, accessibility focus is lost on the buttons in the page but if I use my finger to tap the screen, then focus comes on. How can I enable focus on selection of the Webview import WebKit class ViewControllear: UIViewController, WKUIDelegate { override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view, typically from a nib. let myWebView:WKWebView = WKWebView(frame: CGRect(x:0, y:0, width: UIScreen.main.bounds.width, height:UIScreen.main.bounds.height)) myWebView.uiDelegate = self self.view.addSubview(myWebView) //1. Load web site into my web view let myURL = URL(string: "https://www.apple.com") let myURLRequest:URLRequest = URLRequest(url: myURL!) myWebView.load(myURLRequest) } }
Posted
by
Post not yet marked as solved
1 Replies
267 Views
I would like to know if accessibility settings in iOS such as the Button Shapes feature or other similar accessibility features can be applied to content within a webview. For example, would buttons in a webview adapt to the Button Shapes setting when it is toggled on?
Posted
by
Post marked as solved
1 Replies
399 Views
I have been trying to get VoiceOver focus to change when the user selects a new tab inside a UITabBar. The default behavior seems to be that it just stays on the selected tab item, which is an awful user experience. For some reason: UIAccessibility.post(notification: .screenChanged, argument: view) does not work; nor does .layoutChanged work. Is there a way to set focus when a new tab is selected on a tab bar, or will I just have to hack together a solution that does not use a UIKit UITabBarController?
Posted
by
Post not yet marked as solved
0 Replies
214 Views
When Voice over set to ON, i've implemented UIAccessibilityCustomAction for UITableViewCell SwipeActions. In normal state it works fine. But when Voice over is ON then it crash, because unable to find index of the table view cell. My requirement is to get the index of swipe cell.
Post not yet marked as solved
0 Replies
187 Views
Hi Team, any idea how to scroll while voice over is running? Same cell content need to scroll so that it will focus on what exactly it's reading. I have TableView cell which has huge content while reading it is proper but focus is not updating properly. visible paragraphs reading and focusing properly, while reading the not visible content focus is on button which exist on top.
Posted
by
Post not yet marked as solved
3 Replies
612 Views
I have the following simple demo view: struct DummyTestView: View { @State private var inputValue1 = "" @State private var inputValue2 = "" var body: some View { VStack { Group { TextField("input field1", text: $inputValue1) Text("value1: \(inputValue1)") } .padding( .all) .overlay(RoundedRectangle(cornerRadius: 6) .stroke(Color.black.opacity(0.5), lineWidth: 2) ) .padding( .all) Group { TextField("input field2", text: $inputValue2) Text("value2: \(inputValue2)") } .padding(.all) .overlay(RoundedRectangle(cornerRadius: 6) .stroke(Color.black.opacity(0.5), lineWidth: 2) ) .padding(.all) } } } When I typed something in first input field, then switch to another input field and type something there - I'am not able to switch back to the first input field and edit it. All this could be reproduced only when voice over is on. The issue not reproduced when: replace "VStack" with "Form"; remove any dependency for "inputValue" between "TextField" and "Text". Environment: iOS 14.1, iPhone 12 mini, with enabled voice over. Any suggestions to update iOS to the latest version is not acceptable because our application should support iOS 14 and above.
Posted
by
Post not yet marked as solved
0 Replies
256 Views
Hi, I am trying to improve the pronunciation of a couple of words within a large block of text for VoiceOver users by applying the .accessibilitySpeechIPANotation key to a range in an NSAttributedString. However it appears that the notations are ignored when the range is in the middle of the text. It only seems to apply if the attributed range is at the end of a sentence. For example, using this code sample: let s: String = "live radio" let ipa = "ˈla͡ɪv" let attributedString = NSMutableAttributedString(string: s) let range = attributedString.string.range(of: "live") attributedString.addAttributes(     [.accessibilitySpeechIPANotation: ipa],     range: NSRange(range!, in: attributedString.string)) label.attributedText = attributedString the label will be read incorrectly ("live" rhyming with "give"). However if s = "listen on radio live" or "listen on radio live. today!" then it's read correctly. Then if I change it to `"listen on radio live today!", it's wrong again. What am I missing? Is there some sort of "end of word" symbol I need to include in my IPA notation? (This is on iOS 15. It seems to work like I expect on iOS 12 FWIW).
Post not yet marked as solved
0 Replies
319 Views
Hey guys, I have an NSAttributedString within my app (created from HTML). I assign this string to a UITextView. I would like certain parts of that text to be marked with an 'header' accessibility trait (all the headlines in that text) so that voice over can identify them properly. I was under the impression that I can just use accessibilityTextHeadingLevel to do so, but the text in that given range is still setup with the 'text' accessibility trait: var myString = NSMutableAttributedString(...) let range = NSRange(location: 0, length: 44) myString.addAttribute(NSAttributedString.Key.accessibilityTextHeadingLevel, value: 1, range: range) How is accessibilityTextHeadingLevel supposed to work?
Posted
by
Post not yet marked as solved
1 Replies
261 Views
New to macos dev, just noticed the accessibility inspector is NOT able to inspect majority of the elements of the app, only a plain white area which appears to be the parent of rest of the element, for example , scrollarea, and I can't go any deeper than that using accessibility inspector. Is it some sort of security option I need to turn off? I tried debug mode of the app as well, accessibility inspector still doesn't provide much information.
Posted
by
Post not yet marked as solved
0 Replies
396 Views
Anyone dealt before with Apple Watch complications accessibility? I'm using CLKComplicationTemplateGraphicCornerGaugeText to display custom data but VoiceOver adds degrees (º) after saying the value. I've tried with accessibilityLabel on CLKTextProvider but doesn't fix it. Any idea? Thanks in advance!
Posted
by
Post marked as solved
1 Replies
411 Views
On tvOS you can choose Settings > Accessibility > Display > Focus Style > High Contrast to have teasers highlighted by a white border when focused: However, I cannot find out how to use this feature on my own custom views. It seems that only TVPosterView makes use of this High Contrast accessibility setting. I'd like to be able to show such a frame on my custom views if this setting is enabled but I cannot find how to check if it's enabled. None of the bools listed on https://developer.apple.com/documentation/uikit/uiaccessibility under Capabilities (like isVoiceOverRunning, isGuidedAccessEnabled, isReduceTransparencyEnabled, etc.) seems to refer to this Focus Style setting. Can anybody point me in the right direction? How do I check in code whether Focus Style is set to High Contrast? How do I get the High Contrast frame on non-TVPosterView views?
Posted
by