Как я могу имитировать нажатие кнопки в Swift iOS8 с помощью кода

Как я могу имитировать нажатие кнопки в представлении с помощью 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, если это возможно... Спасибо

Ответ 1

Перевод Swift:

[buttonObj sendActionsForControlEvents: UIControlEventTouchUpInside];

является:

button.sendActions(for: .touchUpInside)

и это должно фактически имитировать нажатие кнопки.

Ответ 2

Swift 3

button.sendActions(for: UIControlEvents.touchUpInside)

Swift 4

button.sendActions(for: .touchUpInside)

Ответ 3

Попробуйте вызвать функцию IBAction:

self.start(self)