ios画外音滑块双击并按住,但用于自定义视图
Posted
技术标签:
【中文标题】ios画外音滑块双击并按住,但用于自定义视图【英文标题】:ios voiceover slider double tap and hold, but for custom view 【发布时间】:2019-02-28 04:45:31 【问题描述】:我创建了一个自定义视图,其行为类似于UISlider
- 有一个“轨道”和一个“抓取”句柄来更改值。出于特殊原因,我不能将其设为UISlider
的子类。我正在尝试使用 VoiceOver 使这个滑块尽可能容易访问。我在处理single finger drag up
和single finger drag down
的自定义视图上有accessibilityIncrease
和accessibilityDecrease
。这会将滑块的值一次更改 10%。
但是,我希望允许更精细的控制,就像非 VoiceOver 滑块一样。默认情况下,UISlider
具有double tap and hold
,您可以向上/向下拖动以“平移”滑块。我想将它准确地添加到我的自定义视图中,但我找不到正确的咒语来处理 double tap and hold
手势。
我可以做些什么来在我的自定义视图上模仿UISlider
中的double tap and hold
手势吗?
非常感谢!!!
【问题讨论】:
【参考方案1】:如果你想为 VoiceOver 用户实现这种新手势,那就别管它了。
这种 UI 控件的recommended gesture 绝对是您显然已经做过的可调整值的实现。
我认为尝试在应用程序中实现新的 VoiceOver 手势不是一个好主意,因为它的用户有自己的习惯,如果他们无法处理自定义控件,他们可能会完全迷失,除非您添加 hint
解释一下,但这绝对不是我推荐的。
否则,您可以查看 What's New in Accessibility
WWDC 2017 视频中介绍的 pass through
概念,该视频处理相同的想法,但用于平移手势...
【讨论】:
您有更多关于直通功能的信息吗?看起来这正是我想要的——通过平移手势到视图本身。那会像普通的 UISlider 一样擦洗滑块,对吧?我在任何地方都找不到该功能的示例。非常感谢! 这更像是一个“概念”而不是“功能”,我在帖子中更正了这个术语。在 WWDC 示例中更容易实现,因为对象可以分为许多部分。你可以用你的自定义滑块来做到这一点,并影响每个小部分的激活点,但要达到你的目的却是一团糟。我还没有看到这个概念在任何地方实现,但是在这里很好地解释了“activationPoint”的使用:a11y-guidelines.orange.com/mobile_EN/… 非常感谢 - 我下注并强迫自己使用UISlider
。不幸的是,替代方案是如此困难。感谢您的时间和帮助!以上是关于ios画外音滑块双击并按住,但用于自定义视图的主要内容,如果未能解决你的问题,请参考以下文章