使用 viewdidload 在 UIView 中显示一些元素

Using viewdidload to show some element in the UIView

通过在线课程,我在不使用故事板的情况下通过编写代码制作了一个日历。问题是,在我想添加这个日历的页面中,有一个弹出页面是 UIView, 例如,它是

@IBOutlet weak var PopUpCalenderView: UIView!

在该课程中,日历只是通过在 viewdidload 中添加几行代码来添加到视图控制器中。

class ViewController: UIViewController {

override func viewDidLoad() {
    super.viewDidLoad()
    self.title = "My Calender"
    self.navigationController?.navigationBar.isTranslucent=false
    self.view.backgroundColor=Style.bgColor

    view.addSubview(calenderView)
    calenderView.topAnchor.constraint(equalTo: view.topAnchor, constant: 10).isActive=true
    calenderView.rightAnchor.constraint(equalTo: view.rightAnchor, constant: -12).isActive=true
    calenderView.leftAnchor.constraint(equalTo: view.leftAnchor, constant: 12).isActive=true
    calenderView.heightAnchor.constraint(equalToConstant: 365).isActive=true

    let rightBarBtn = UIBarButtonItem(title: "Light", style: .plain, target: self, action: #selector(rightBarBtnAction))
    self.navigationItem.rightBarButtonItem = rightBarBtn
}

override func viewWillLayoutSubviews() {
    super.viewWillLayoutSubviews()
    calenderView.myCollectionView.collectionViewLayout.invalidateLayout()
}
}

当我使用这个方法时,它会在弹出页面(UIView)后面添加日历,它在后台。你能帮我解决这个问题并将日历移到弹出页面吗? 非常感谢

将日历作为子视图添加到弹出视图而不是视图控制器视图。

popupView.addSubview(calendarView)