Пользовательская цифровая клавиатура для реализации звука щелчка в Swift 3 - PullRequest
0 голосов
/ 13 июня 2018

У меня есть пользовательская цифровая клавиатура, созданная с помощью UICollectionView.Я получаю значение нажатой клавиши внутри метода didSelectItemAt.Мне нужен звук клавиатуры, когда вызывается метод didSelectItemAt.И это должно зависеть от настроек устройства пользователя.

Я ссылался на документы для разработчиков Apple, но не могу его реализовать.В документе сказано:

Чтобы включить пользовательское представление ввода или вспомогательное представление для щелчков ввода, выполните следующие два шага: 1. Примите протокол UIInputViewAudioFeedback в своем классе представления ввода.2. Реализуйте метод делегата enableInputClicksWhenVisible, чтобы он возвращал true.

Я пробовал следующим образом:

  1. Создан CustomUICollectionView

<code>class CustomUICollectionView: UICollectionView, UIInputViewAudioFeedback {
    var enableInputClicksWhenVisible: Bool {
        return true
     }
 }
Объявлена ​​переменная numberPad в контроллере, где отображается цифровая клавиатура.И вызвал playInputClick внутри метода didSelectItemAt. * ​​1019 *

<code>@IBOutlet weak var numberPad: CustomUICollectionView!<br>
 func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
    UIDevice.current.playInputClick()
 }

1 Ответ

0 голосов
/ 13 июня 2018
  1. Вам необходимо вызвать playInputClick из класса представления, который соответствует UIInputViewAudioFeedback.
  2. Класс, который соответствует UIInputViewAudioFeedback и вызывает playInputClick, должен быть активным inputView текстового поля или текстового представления.

Выполните рефакторинг кода для соответствия этим требованиям, и щелчок сработает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...