私は上部にNavigationBarがあり、UIViewControllerをRootViewControllerとして追加したアプリケーションに取り組んでいます。UIViewControllerはUINavigationControllerの背後に隠れていますが、下に配置する必要があります
私の計画は、このUIViewControllerに新しいSubviewを追加することでした。新しいSubviewもUIViewControllerの拡張されました。私はUIViewControllerにコントローラのビュー(グレーのRect)を追加しましたが、NavigationBarの後ろに配置されています。私はそれを望んでいません..解決策を探して面白いものを見つけました。: UIViewControllerにUIView()(緑のRect)を追加すると、ビューの配置は完全に機能します他のUIViewControllerビューから参照してください。 私のコードは次のようになります。
class DashboardController: UIViewController {
var ccview:ContactCircleController!
override func viewDidLoad() {
super.viewDidLoad()
edgesForExtendedLayout = []
self.view.backgroundColor = .white
let test = UIView()
test.backgroundColor = .green
test.frame = CGRect(x: self.view.frame.width - 200, y: 0, width: self.view.frame.width/2, height: self.view.frame.width/2)
self.view.addSubview(test)
setup()
}
func setup(){
ccview = ContactCircleController()
ccview.view.frame = CGRect(x: 0, y: 0, width: self.view.frame.width/2, height: self.view.frame.width/2)
ccview.edgesForExtendedLayout = UIRectEdge.top
self.view.addSubview(ccview.view)
}}
私はすでに「拡張エッジ」をチェックしました - ストーリーボード上のnavigationcontrollerのトグルを。また、edgesForExtendedLayout = []をUIViewControllerに追加し、UIViewのためにうまくいきました。しかし、別のUIViewControllerのビューのため...それは働かなかった。
ありがとうございました!