Я пытаюсь создать мини боковое меню, которое будет двигаться жестом.
Я зарегистрировал этот жест в моем меню ViewController, но когда я использую «перевод» для перемещения левого якоря моего BaseMenuController, он не перемещается ...
class MainController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .white
setupConstraints()
}
var baseMenuViewLeftAnchor: NSLayoutConstraint!
func setupConstraints() {
let baseMenuController = BaseMenuController()
let baseMenuView = baseMenuController.view!
baseMenuView.translatesAutoresizingMaskIntoConstraints = false
view.addSubview(baseMenuView)
addChild(baseMenuController)
baseMenuViewLeftAnchor = baseMenuView.leftAnchor.constraint(equalTo: view.leftAnchor)
menuViewLeftAnchor.isActive = true
baseMenuView.heightAnchor.constraint(equalToConstant: 200).isActive = true
baseMenuView.widthAnchor.constraint(equalToConstant: 200).isActive = true
baseMenuView.centerYAnchor.constraint(equalTo: view.centerYAnchor).isActive = true
}
}
class BaseMenuController: UITableViewController {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .white
let panGesture = UIPanGestureRecognizer(target: self, action: #selector(handlePan))
view.addGestureRecognizer(panGesture)
}
@objc func handlePan(gesture: UIPanGestureRecognizer) {
let mainController = MainController()
let mainView = mainController.view!
let translation = gesture.translation(in: mainView)
let x = translation.x
mainController.baseMenuViewLeftAnchor.constant = x
}
}