我有一个UIPageViewController
。在其viewDidLoad()
事件中,我添加了如下所示的层:
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .clear
self.dataSource = self
self.delegate = self
let layer = CAShapeLayer()
layer.path = UIBezierPath(rect: CGRect(x: 0, y: 0, width: view.frame.width, height: view.frame.height * 0.7)).cgPath
layer.fillColor = UIColor.yellow.cgColor
view.layer.addSublayer(layer)
// The pages (`viewControllers` and subviews (a button and a PageController) are added here...
}
问题在于此层覆盖页面的内容(UIViewController
添加的setViewControllers
)。我希望该图层位于当前视图下(例如背景),而不位于其顶部。我怎样才能做到这一点?我尝试将view.layer.addSublayer(layer)
替换为:
view.layer.insertSublayer(layer, below: view.layer)
但是,那没有用。