鍍金池/ 問答/C  iOS  Linux/ iOS11 適配 self.navigationItem.titleView =

iOS11 適配 self.navigationItem.titleView = self.searchBar 導(dǎo)致的BUG

self.navigationItem.titleView = self.searchBar;
https://zhuanlan.zhihu.com/p/...
會出現(xiàn)導(dǎo)航欄高度的問題。用下面的方法解決之后衍生出新的一個問題
測試機版本。ios 11.0.

if(@available(iOS 11.0, *)) {
    [[_searchBar.heightAnchor constraintEqualToConstant:44] setActive:YES];
    } 

A界面push到B界面的時候。A界面的searchBar會在B界面的導(dǎo)航欄上。直到push動畫完成才會消失。ios11之前都沒關(guān)系,求大神幫忙看一下是什么問題。
圖片描述

回答
編輯回答
枕頭人

讓titleView繼承一個view,然后實現(xiàn)以下方法

/// 解決iOS導(dǎo)航欄自定義titleView后 顯示錯誤的問題(常用于搜索框)
-(CGSize)intrinsicContentSize {
//    return UILayoutFittingExpandedSize;
    return  CGSizeMake([UIScreen mainScreen].bounds.size.width - 2*43 - 2*20, 30);
}
2017年12月22日 05:15