在iOS 7.0.3上打开增加对比度模式会消除您通常在导航栏中看到的模糊效果,如果您使用的是α小于1.0的条形色调,这会使导航条看起来比它更透明使用默认设置.
有没有办法以编程方式检查是否启用此设置?虽然UIAccessibility有很多其他函数,比如UIAccessibilityIsInvertColorsEnabled(),但我找不到任何与此设置相关的内容.
当"双指向下轻拂"手势完成时,是否可以更改iPad中可访问性的VoiceOver功能读取元素的顺序?
对于附加图像,其中包含3个标签和一个按钮,VoiceOver按以下方式读取元素,
标签1 - >标签2 - >按钮 - >标签3
订单可以更改为,
标签1 - >标签2 - >标签3 - >按钮
一般来说,我会查看Apple的UICatalog示例代码以获得基本的VoiceOver支持,但在示例代码中看起来似乎有对UIPickerViews的VoiceOver支持.我是否需要在某处提供accessibilityLabel方法来添加VoiceOver支持?我试图实现UIPickerViewAccessibilityDelegate方法,但是仅通过我的选择器视图读取标签,而不是提示向上或向下滑动以更改值.
我的选择器视图也设置为UITextField的输入视图.所以我不确定这是否相关.
更新:https: //github.com/stevemoser/VoiceOverPicker
我创建了一个展示问题的示例项目.在该示例中,显示了正常的选择器视图和文本字段.还有一个选择器设置为textfield的输入视图属性.我似乎无法通过在使用VoiceOver时点击它来激活任一选择器.虽然我可以通过屏幕上的视图滑动(左和右)来激活任何一个.有任何想法吗?
更新2:看起来如果该应用程序是在iPhone上运行的iPhone应用程序或在iPad上运行的iPad应用程序,它可以正常工作但如果它是在iPad上运行的仅iPhone应用程序,则点击以选择UIPickerView不起作用.
将标准按钮拖到 IB 中的视图上,然后记录其 isAccessibilityElement 属性。即使文档明确指出默认情况下应将其设置为 YES,这也会返回 NO。
我错过了什么吗?
有没有办法让iOS播放UIActionSheet
呈现时播放的音调?突然发出哔哔声,然后是"警报".
我搜索了文档,但却找不到合适的东西.
我有一个滚动视图,其中有许多按钮作为子视图.这些子视图按钮也存储在一个数组中.当我在语音覆盖率模式中使用单击滑动手势从上到下遍历视图中的所有UI元素时,语音翻转仅读取滚动视图中的开始/最后可见 按钮的可访问性标签,然后启动读取视图中的其他UI组件.
该accessibilityScroll委托协议的功能只有当用户那么,用户只用一个水龙头滑动手势通过在视图中的所有UI组件进行导航,这将不会是适合我的情况下滚动视图中进行实际的滚动被调用.
有没有办法可以确定在语音模式下当前正在读取哪个子视图数组按钮,这样我就可以滚动到滚动视图中的特定偏移/按钮位置,使当前偏移的按钮被带入视图,这样它们也可以被读取出来吗?或者是否有更简单的方法来实现我想要的?我很感激你的建议.谢谢
如何让 VoiceOver 滚动到 UIScrollView 中的屏幕外元素。
我有一个 UIScrollView。这是一个包含许多子视图的 UIView。在这些子视图中是标签 - 如下所示:
Scroll View
-> UIView
--> UIView
----> Label
--> UIView
----> Label
--> UIView
----> Label
--> UIView
----> Label
--> UIView
----> Label
Run Code Online (Sandbox Code Playgroud)
当我以横向模式启动我的应用程序时,我可以看到一些元素在屏幕外。我可以毫无问题地滚动到这些。但是,在使用 VoiceOver 时,我可以通过滑动来移动屏幕上的元素,但应用程序不会通过单独滑动来滚动通过屏幕上的最后一个可见元素。如果我将 iPad 旋转到纵向模式,我可以滑动到无法访问的元素,并继续滑动到纵向模式下屏幕外的其他元素。我可以使用三指滑动向下移动到下一个“页面”并选择一个元素继续,但这不是我所期望的。我原以为只要继续滑动,下一个元素就会滚动到视图中。
该应用程序是使用 Xcode 6.4 以 Swift 1.2 编写的,我正在运行 iOS 8.4 的 iPad Mini 2 上运行该应用程序
有任何想法吗?
这是我通知系统以读出我的元素的方式:
UIAccessibilityPostNotification(UIAccessibilityAnnouncementNotification, cell)
Run Code Online (Sandbox Code Playgroud)
问题是当我发送多个通知时,已经在读取的通知会被打断!我希望能够排队...
我还在这里的另一个问题中发现,我应该使用属性字符串:
attributedString.addAttribute(NSAttributedStringKey(
rawValue: UIAccessibilitySpeechAttributeQueueAnnouncement),
value: true,
range: range!.nsRange)
Run Code Online (Sandbox Code Playgroud)
我在这里想念什么?
最小的问题示例:https://codepen.io/sidouglas/pen/LYPZaOG
当输入范围集中在Chrome Vox或Mac的Voice over上时-的每个值valuetext
都会连续读出。
<input
...
v-bind:aria-valuemax="valueMax"
v-bind:aria-valuenow="valueNow"
v-bind:aria-valuetext="currentTime + ' of ' + totalDuration"
...
/>
Run Code Online (Sandbox Code Playgroud)
将此与非常易于访问的https://plyr.io/#audio组件进行对比-当重点关注时,它会继续更新其aria值,但只向屏幕阅读器宣布两次。
有人知道吗?
<input
...
v-bind:aria-valuemax="valueMax"
v-bind:aria-valuenow="valueNow"
v-bind:aria-valuetext="currentTime + ' of ' + totalDuration"
...
/>
Run Code Online (Sandbox Code Playgroud)
new Vue({
el: '#range',
data: {
valueMax:100,
duration:100,
current:0,
totalDuration:'1:40'
},
computed:{
currentTime: function() {
return this.convertTime(this.current);
},
valueNow() {
return Math.round(this.current);
},
},
methods: {
convertTime(time) {
const minutes = Math.floor(time / 60);
const seconds = time …
Run Code Online (Sandbox Code Playgroud)我有一个具有此布局的视图控制器(请注意,黄色视图和表格视图是同级视图):
\n\n我希望黄色视图充当容器,所以我在以下位置执行此操作viewDidLoad
:
yellowView.isAccessibilityElement = true\nview.accessibilityElements = [yellowView!, tableView!]\n
Run Code Online (Sandbox Code Playgroud)\n在 Voice Over 中,我从辅助功能转子中选择“Containers”,并期望能够上下滑动以从黄色视图移动到表格视图并再次返回:
\n黄色(向下滑动) \xe2\x86\x92 TableView(向下滑动) \xe2\x86\x92 Tabbar(向上滑动) \xe2\x86\x92 tableView(向上滑动) \xe2\x86\x92 黄色
\n然而,情况并非如此 - 在tableView
获得焦点后,向上滑动不会将焦点移动到黄色视图,它只是停在那里。向下滑动,移动到选项卡栏 - 似乎我的自定义视图被忽略为容器。
我尝试了许多添加超级视图并isAccessibilityElement = false
对其进行设置的组合,但似乎没有任何效果。
有人知道如何解决这个问题吗?
\nuiaccessibility ×10
ios ×9
voiceover ×4
uiscrollview ×2
cocoa-touch ×1
ios7 ×1
ipad ×1
iphone ×1
javascript ×1
objective-c ×1
swift ×1
uibutton ×1
uikit ×1
uipickerview ×1
vue.js ×1