Ответ 1
Перевод Swift:
[buttonObj sendActionsForControlEvents: UIControlEventTouchUpInside];
является:
button.sendActions(for: .touchUpInside)
и это должно фактически имитировать нажатие кнопки.
Как я могу имитировать нажатие кнопки в представлении с помощью Swift. Я пытаюсь получить разрешения Календаря и имею функцию, чтобы проверить эту авторизацию, когда я нажимаю кнопку запуска, которая в настоящее время выполняется
@IBAction func start(sender: AnyObject) {
//loads prompt to "Allow" or "Don't Allow" calendar permissions
eventStore.requestAccessToEntityType(EKEntityTypeEvent, completion: handler)
//checkAuth function looks at calendar authorization to get current status
and then acts accordingly to dismiss View or load Privacy Settings
checkAuth()
}
Мне нужно смоделировать нажатие кнопки кнопки "Пуск", чтобы снова запустить функцию start(). Единственное, что я нашел до сих пор, похоже, находится в Objective-C
[buttonObj sendActionsForControlEvents: UIControlEventTouchUpInside];
Я не знаком с Obj-C и мне нужен способ реализовать это в Swift, если это возможно... Спасибо
Перевод Swift:
[buttonObj sendActionsForControlEvents: UIControlEventTouchUpInside];
является:
button.sendActions(for: .touchUpInside)
и это должно фактически имитировать нажатие кнопки.
Swift 3
button.sendActions(for: UIControlEvents.touchUpInside)
Swift 4
button.sendActions(for: .touchUpInside)
Попробуйте вызвать функцию IBAction:
self.start(self)