2013-05-23 2 views
4

Я хочу, чтобы пользовательская клавиатура выполнялась как клавиатура программного обеспечения iOS в отношении доступности. Когда кнопочное нажатие добавляет письмо в UITextField, письмо должно быть произнесено VoiceOver в «добавленном тоне персонажа». Когда нажатие кнопки удаляет букву из UITextField, букву следует произносить VoiceOver в «удаленном тональном сигнале».Доступная пользовательская клавиатура в iOS

Вот что я пытался:

  1. Создано UITextField в контроллере представления, в раскадровке.
  2. Создал два UIButtons с надписью «Тип» и «Backspace» в контроллере представления в раскадровке.
  3. Задайте свойства доступности как для UIButtons для Keyboard Key.
  4. Поднял раскадровку UITextField до экземпляра UITextField IBOutlet, textField.
  5. Поднял раскадровку «Тип» UIButton до IBAction, тип.
  6. Поднял раскадровку «Backspace» UIButton до IBAction, -backspace.
  7. Тип реализации: [[self textField] insertText:@"a"];.
  8. Внедрено -backspace как: [[self textField] deleteBackward];.
  9. Сделано textField первого ответчика.

Я также пробовал то же самое, перемещая кнопки в UIView, который был установлен как входной элемент textField.

Символы правильно добавлены и удалены из текстового поля, но VoiceOver не говорят. Как я могу сделать эту работу?

EDIT:
Аппаратная клавиатура говорит правильно. Только пользовательская клавиатура программного обеспечения не говорит так, как должна.

+0

Когда вы делаете все это, ваш делегат получает обратные вызовы в textField: shouldChangeCharactersInRange: replacementString: 'когда эти клавиши нажаты? –

+0

Нет, это не так. Однако, прося делегата, если текст должен измениться перед вызовом -insertText: похоже, не имеет значения. – Endersstocker

ответ

0

Возможно, для работы этого устройства необходимо включить Voice Over для всего устройства. Вы можете изменить это в доступности. Я не уверен, что делать, если на устройстве уже включен голос поверх.

+1

Я бы предположил, что OP имеет VoiceOver включен –

+0

Я бы тоже предположил, что, но вы никогда не знаете, и я просто пытаюсь быть полезным. – charleyh

+1

возможно, комментарий, а может быть, и не ответ? –

Смежные вопросы