gpt4 book ai didi

swift - UIAccessibilityTrait可调不进入increment()或decrement() swift

转载 作者:行者123 更新时间:2023-11-28 13:35:56 24 4
gpt4 key购买 nike

我有一个显示数字的元素(一个 imageView)。我希望语音用户向上滑动以增加并向下滑动以减少。一共有六个数字(图像),每个数字代表不同的屏幕内容。

为此,我将 View 设为可调整:

imageView.accessibilityTraits = .adjustable

我还实现了以下方法:

override func accessibilityIncrement() {
print("increment")
}

override func accessibilityDecrement() {
print("decrement")
}

但是,当我对此进行测试时,Xcode 不会进入递增或递减方法。

我做错了什么?有没有更好的方法可以使用画外音来增加或减少值?

最佳答案

我猜你在 View Controller 中实现了 accessibilityIncrement()accessibilityDecrement() 方法,但它们应该属于创建的 ImageView ,其特征应该是 .adjustable.

在这个基本示例中,只需继承 UIImageView 即可:

class MyImageView: UIImageView {

override var isAccessibilityElement: Bool {
get { return true }
set { }
}

override var accessibilityTraits: UIAccessibilityTraits {
get { return .adjustable }
set { }
}

override func accessibilityIncrement() {
print("INCREMENT")
}

override func accessibilityDecrement() {
print("DECREMENT")
}
}

您只需定义每个可调整方法中的操作以及应该完成的工作。

我建议你看看this site其中为 ObjC 和 Swift 提供了一个关于可调整值的完整示例,其中包含代码片段和插图。

关于swift - UIAccessibilityTrait可调不进入increment()或decrement() swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56628631/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com