2017-02-23 72 views
-3

Я пытаюсь сделать собственный элемент управления таким же, как AlertController.Настроить действие Обработчик с другим классом в Swift

Я хочу добавить функцию как Обработчик действий такой же, как AlertController.

ViewController.swift

@IBAction func showcustomAlert(){ 
     let story = UIStoryboard(name: "Main", bundle: Bundle.main) 
     let CustomAlertController = story.instantiateViewController(withIdentifier: "CustomAlertController") as! CustomAlertViewController 
     CustomAlertController.modalPresentationStyle = UIModalPresentationStyle.overCurrentContext 

     CustomAlertController.addOKaction = { print("done")} //Main issue 
     self.present(CustomAlertController, animated: true) { 

     } 
    } 

CustomAlertController.swift

@IBAction func OkPressed(){ 

} 

Как определить правша в customAlertController, так что, когда "okPressed" называется, он будет печатать "сделано" ??

Как я могу это достичь?

Спасибо,

+2

Можете ли вы добавить код, который объясняет, по крайней мере, то, что вы пытаетесь достичь? Из этого поста очень сложно понять, что вы спрашиваете. –

+0

Вы имели в виду, что хотите добавить пользовательские кнопки, такие как OK, отменить и т. Д.? – Sneha

+0

@Sneha, да точно такой же – nirav

ответ

2

Наблюдая свой код, я предполагаю, что вы определили ближе в своем классе CustomAlertController

как-

var addOKaction : (() ->())? 

и вы все сделали правильно, просто у вас называть, что ближе когда нажата кнопка ok.

как-

@IBAction func OkPressed(){ 
self.addOKaction() 
} 

и вы получите обратный вызов при нажатии кнопки ОК будет получить нажимается.

+0

привет, я проверяю Спасибо ... – nirav

+0

Спасибо! За работой!!! – nirav

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