【问题标题】:How add subviews to UIPageViewController with autolayout ( constraints)?如何使用自动布局(约束)将子视图添加到 UIPageViewController?
【发布时间】:2018-08-21 10:02:37
【问题描述】:

我尝试将 UIImageView 添加到 UIPageVC 背景视图,但它将作为子视图,因为它会通过约束进行自动布局。

我试图在 UIPageViewController 类中做这样的事情:

override func viewDidLoad() {
    super.viewDidLoad()
    dataSource = self
    delegate = self

    // Adding an UIImageView to background

    let imageView = UIImageView(image: UIImage(named: "backgoundImage"))
    imageView!.contentMode = .scaleToFill
    view.insertSubview(imageView!, at: 0)
}

感谢所有回答!

【问题讨论】:

    标签: ios uiimageview uikit uipageviewcontroller


    【解决方案1】:

    您需要对广告限制执行类似操作。

    if let imageView = UIImageView(image: UIImage(named: "backgoundImage")) {
      imageView.contentMode = .scaleToFill
      view.insertSubview(imageView, at: 0)
    
      imageView.translatesAutoresizingMaskIntoConstraints = false
    
      imageView.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 0).isActive = true
      imageView.topAnchor.constraint(equalTo: view.topAnchor, constant: 0).isActive = true
      imageView.bottomAnchor.constraint(equalTo: view.bottomAnchor, constant: 0).isActive = true
      imageView.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: 0).isActive = true
    }
    

    【讨论】:

    • self.view添加任何约束时出现问题我会收到此错误消息并将其添加到问题中,但感谢您的回答,我会尝试使用它!
    • 是的,它有效。谢谢!但是if if let imageView = UIImageView(image: UIImage(named: "backgoundImage"))中没有可选值,我把这个改成let imageView = UIImageView(image: UIImage(named: "backgroundView"))
    • @GolovanovDmitrii 其实应该是UIImage(named: "backgoundImage")
    • 我做 if 块像:if let image = UIImage(named: "backgroundView") { }
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-05-04
    • 2017-02-11
    • 2018-09-06
    • 1970-01-01
    • 2019-02-20
    • 2015-04-30
    • 1970-01-01
    相关资源
    最近更新 更多