【发布时间】:2019-03-28 12:37:45
【问题描述】:
当我按下 UIView 类中的按钮时,我想将导航控制器触发到其他屏幕。我怎样才能做到这一点?
//创建Button Iboutlet的UIView类的代码
import UIKit
protocol ButtonDelegate: class {
func buttonTapped()
}
class SlidesVC: UIView {
var delegate: ButtonDelegate?
@IBAction func onClickFinish(_ sender: UIButton) {
delegate?.buttonTapped()
}
@IBOutlet weak var imgProfile: UIImageView!
}
//ViewController Class code in Which Button Protocol will be entertained
class SwipingMenuVC: BaseVC, UIScrollViewDelegate {
var slidesVC = SlidesVC()
override func viewDidLoad() {
super.viewDidLoad()
slidesVC = SlidesVC()
// add as subview, setup constraints etc
slidesVC.delegate = self
}
extension BaseVC: ButtonDelegate {
func buttonTapped() {
self.navigationController?.pushViewController(SettingsVC.settingsVC(),
animated: true)
}
}
【问题讨论】:
-
使用委托来完成这项工作
-
你能解释一下我应该怎么做吗?或者您可以发布任何解决方案?
标签: ios swift xcode uinavigationcontroller