2016-09-21 46 views
0

如果我設置一個搜索欄導航titleview的,像UINavigation titleview的錯誤

navigationController?.navigationBar.topItem?.titleView = self.searchBar 

,但我設置它的框架,通過使用自動佈局,如:

self.searchBar.snp_makeConstraints { make in 
     make.left.equalTo(leftSpace) 
     make.right.equalTo(-leftSpace) 
     make.top.equalTo(10) 
     make.height.equalTo(44) 
} 

,然後它會導致破碎如果我推到另一個視圖控制器。

如果我把它用這種方式框架:

self.searchBar.frame = CGRectMake(leftSpace, 0, screenSize.width - 2 * leftSpace, 44) 
運行狀況良好

...

任何人都可以告訴我爲什麼? Thx ...

回答

0

TitleView的佈局由導航控制器管理。添加到titleView時,您添加到視圖的約束將被忽略。如果你想完全自定義導航欄,我建議創建你自己的視圖。

+0

Thx第一。但是我可以看到標題視圖正確顯示在導航欄中,並且如果我推送到另一個視圖控制器,則會斷開。 – dyljqq