質問
コードでAutoLayoutを実装しています。
大元のwindowにビューを追加したいのですが、constraintの設定の部分(★)でエラーになってしまいます。
何か解決方法をご存知の方がいらっしゃいましたら、教えていただけますでしょうか。
よろしくお願い致します。
該当のソースコード
swift
1 2class ViewController: UIViewController{ 3 4 var appDelegate:AppDelegate = UIApplication.shared.delegate as! AppDelegate 5 let AView = UIView() 6 7 override func viewDidLoad() { 8 super.viewDidLoad() 9 // {AView}: 10 appDelegate.window?.addSubview(AView) // ナビゲーションバーも覆いたいので大元のwindowに追加 11 // --位置 12 AView.translatesAutoresizingMaskIntoConstraints = false 13 AView.centerXAnchor.constraint(equalTo: self.view.centerXAnchor).isActive = true // ★ここでエラーになります★ 14 AView.centerYAnchor.constraint(equalTo: self.view.centerYAnchor).isActive = true 15 AView.widthAnchor.constraint(equalTo: self.view.widthAnchor).isActive = true 16 AView.heightAnchor.constraint(equalTo: self.view.heightAnchor).isActive = true 17 18・・・ 19 } 20}
エラー内容
reason: 'Unable to activate constraint with anchors <NSLayoutDimension:■■■ "UIView:■■■.width"> and <NSLayoutDimension:■■■ "UIView:■■■.width"> because they have no common ancestor. Does the constraint or its anchors reference items in different view hierarchies?
補足情報
Xcode:Version 11.1
Swift5
iOS12.0
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。