accessibilityIncrement и accessibilityDecrement не вызывается с помощью ползунка - PullRequest
0 голосов
/ 19 декабря 2018

Я пытаюсь добавить доступность к простому UISlider.Я прочитал документ , регулируемый Apple, и увидел, что мне нужно реализовать две функции из UIAccessibilityAction protocol;accessibilityIncrement() и accessibilityDecrement().

Проблема, с которой я столкнулся, заключается в том, что даже если я установил ползунок в качестве элемента доступности в viewDidLoad и установил slider.accessibilityTraits = .adjustable, две функции переопределения невызывается, даже если я изменяю значения.

Я также пытался установить slider.accessibilityLabel = "test", но он все еще не читает метку.Только как далеко зашел слайдер.Например, «80%».

Есть идеи о том, как я могу сделать эту работу?Я также прочитал эти два сообщения в stackOverflow, но ни один из них не работал для меня. accessibilityIncrement / Decrement не вызывается и Accessibility accessibilityDecrement () не вызывается

Я также могу упомянуть, что я также пытался установить точки останова на accessibilityIncrement() и accessibilityDecrement(), но ничего не произошло.


Мой код

override func viewDidLoad() {
    super.viewDidLoad()

    slider.isAccessibilityElement = true
    slider.accessibilityLabel = "test"
    slider.accessibilityTraits = .adjustable

}


override func accessibilityIncrement() {
    slider.accessibilityValue = textField.text!
}

override func accessibilityDecrement() {
    slider.accessibilityValue = textField.text!
}


@IBAction func sliderValueChanged(_ sender: UISlider) {
    guard let unit = question?.unit else { return }

    let currentValue = Int(sender.value + 0.5)
    textField.text = "\(currentValue) \(unit)"


    slider.accessibilityLabel = textField.text!
}

1 Ответ

0 голосов
/ 19 декабря 2018

Вы реализуете методы accessibilityIncrement() и accessibilityDecrement() в вашем контроллере представления, но они должны принадлежать созданному слайдеру , чья черта должна быть .adjustable.

Я предлагаю вам взятьвзгляните на этот сайт доступности , где приведен полный пример настраиваемых значений с фрагментами кода и иллюстрациями для ObjC и Swift.

Следующий пример позволит вызвать accessibilityIncrement() и accessibilityDecrement() методы с помощью ползунка .

...