написание обработчиков для пользовательского фреймворка

#swift #frameworks #handler #code-reuse

Вопрос:

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

пример кода:

 @IBAction func btnShowAction(_ sender: UIButton) {
    
    let bundle = Bundle(for: WorkspaceTabVC.self)
    
    let workspaceTabVC = WorkspaceTabVC(nibName: "WorkspaceTabVC", bundle: bundle)
   workspaceTabVC.showBackButton = false

    self.navigationController?.navigationBar.isHidden = true
    self.navigationController?.pushViewController(workspaceTabVC, animated: true)
    
}
 

Комментарии:

1. Вы можете поместить это действие кнопки в расширение UIViewController, а затем выполнить привязку с любого контроллера представления или просто создать функцию внутри расширения и вызвать ее из любого места.

2. дело в том, что я должен использовать этот фреймворк в любом своем проекте. мое внимание сосредоточено на возможности повторного использования. не удается обработать сценарий действием. я должен выполнить это каким-то другим методом. то же самое, но по-другому, но независимо от кода.дело в том, что, возможно, мне нужно не все время нажимать на это, я могу представить/добавить как ребенка или делать что угодно.

3. @RajaKishan, пожалуйста, поделитесь примером кода добавочного номера для этого и как позвонить. я не могу этого понять.

4. Я не уверен, что правильно понимаю вашу проблему, но если вы хотите, чтобы ваша платформа запускала код для конкретного приложения, вам может потребоваться взглянуть на шаблон делегирования (или любые альтернативы, такие как закрытие).