我正在努力确保我正在开发的 iOS 应用程序是可访问的,并且正在尝试实施 VoiceOver 以确保这一点。
我找不到任何帮助的一件奇怪的事情是显示 Touch ID 视图时(在我的情况下用于登录应用程序)。VoiceOver 将 ID 发音为单词而不是 ID
我尝试为 NSString 和 LAContext 对象实现可访问性属性,但似乎都没有改变 VoiceOver 读出的内容。代码片段如下:
LAContext *context = [[LAContext alloc] init];
[context setIsAccessibilityElement:YES];
[context setAccessibilityLabel:@"TEST 2"];
NSError *error = nil;
NSString *label = @"Please authenticate your ID using the Touch ID";
[label setIsAccessibilityElement:YES];
[label setAccessibilityTraits:UIAccessibilityTraitStaticText];
[label setAccessibilityLabel:@"TEST"];
showingTouchID = TRUE;
if ([context canEvaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics error:&error]) {
[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics
localizedReason:label
reply:^(BOOL success, NSError *error) {
......
Run Code Online (Sandbox Code Playgroud)
带有或不带有可访问性属性的上下文的 VoiceOver 的输出始终是标签文本。
非常感谢所有帮助:)
我正在研究一个本机iOS应用程序,它将检索我将在Bluemix Liberty或node.js应用程序上创建的Web服务.我面临的挑战是需要通过Single Sign On或oAuth进行保护.我需要提供者是IBM ID.我之前在Liberty上实现了SSO(W3),用于基于Web的应用程序,但想知道是否可以使用相同的方法(尽管是WWW)来保护我的应用程序的Web服务.
谢谢.