2016-12-25 9 views
-2

ビューコントローラーのビューをビューのサブビューとして追加しましたが、今度はクリップされ続けます。サブビューがクリップされています

enter image description here

let dayExpenseStorybaord = UIStoryboard(name: "CWDayExpenseStoryboard", bundle: nil) 
let dayExpenseVC = dayExpenseStorybaord.instantiateViewController(withIdentifier: "CWDayExpenseView") 
(dayExpenseVC as! CWDayExpenseViewController).parentVC = self 
childView.addSubview(dayExpenseVC.view) 

私は、これは、関連するすべてのコードだと思います。さらに追加が必要な場合は教えてください。

フォローアップの質問

私は私が正しくフレームや他のものを置くと思いますが、あなたはレコード費用ビューの上部を見ることができるようにすることは、トップレイアウトガイドの底に準拠していません。私は実際にはページビューコントローラでこれも持っていましたが、同じことが起こりました。この問題の原因は何ですか?

enter image description here

+0

ご質問からドロスを取り除いてください。質問をはっきりと完全に聞くだけです。 - "ビューコントローラのビューをビューにサブビューとして追加しました。"正しくない限り、それは違法です。しかし、あなたはあなたのやり方を見せていません。あなたは_any_コードを表示していません。だから、助けを得ることもないでしょう。 – matt

+0

編集されました。ありがとう。 – Latcie

+0

カスタム親ビューコントローラを実装してビューコントローラを子供にして、その親ビューコントローラを作成するために行う必要がある[精巧なダンス](http://www.apeth.com/iOSBook/ch19.html#_container_view_controllers)がありますあなたのビューのサブビューを見て、あなたがダンスをやっていないと言うことができる限り。また、 'dayExpenseVC.view'に' frame'を指定することはありませんので、サイズや位置を制御しようとしていません。だからどこに現われるのかはかなりランダムです。 – matt

答えて

0

あなたはframeautoResizingMaskdayExpenseVC.viewを設定したり、falseからtranslatesAutoresizingMaskIntoConstraintsを設定し、必要な制約を追加しますか。

さらに、ビューコントローラの包含要件を満たすために、ビューの追加が完了したらaddChildViewControllerdidMove(toParentViewController:)を呼び出すことを忘れないでください。ちなみに、そうすればparentが設定され、自分のparentVCプロパティが不要になります。

let dayExpenseVC = dayExpenseStoryboard.instantiateViewController(withIdentifier: "CWDayExpenseView") as! CWDayExpenseViewController 
addChildViewController(dayExpenseVC) 
// dayExpenseVC.parentVC = self 
dayExpenseVC.view.frame = ... 
childView.addSubview(dayExpenseVC.view) 
dayExpenseVC.didMove(toParentViewController: self) 
関連する問題