UISearchController向上偏移64處理
1.導航欄translucent屬性
這個BOOL屬效能控制UITabBar/UINavigationBar的半透明效果,預設為YES.
UINavigationBar/UITabBar的translucent屬性官方解釋:
預設為YES,可以通過設定NO來強制使用非透明背景,
如果導航條使用自定義背景圖片,那麼預設情況該屬性的值由圖片的alpha(透明度)決定,如果alpha的透明度小於1.0值為YES。
如果手動設定translucent為YES並且使用自定義不透明圖片,那麼會自動設定系統透明度(小於1.0)在這個圖片上。
如果手動設定translucent為NO並且使用自定義帶透明度(透明度小於0)的圖片,那麼系統會展示這張背景圖片,只不過這張圖片會使用事先確定的barTintColor進行不透明處理,若barTintColor為空,則會使用UIBarStyleBlack(黑色)或者UIBarStyleDefault(白色)。
UIScrollView
translucent = YES,的時候 系統自動為scrollView增加了-頂部64px的內邊距-底部49px的內邊距,正好是導航欄高度+狀態列高度以及TabBar高度。
translucent = NO,scrollView內容將會被擋住。解決方法:
self.automaticallyAdjustsScrollViewInsets = NO,
if (@available(iOS 11.0, *)){
[[UIScrollView appearance] setContentInsetAdjustmentBehavior:UIScrollViewContentInsetAdjustmentNever];
}
非UIScrollView
1.translucent = YES,的時候,檢視會向下偏移64,解決辦法:translucent = NO
2.既要translucent = YES,也需要正常顯示,解決方法:
2.1手動修改frame佈局,從64開始佈局,底部同理。
2.2修改viewController的edgesForExtendedLayout屬性,edgesForExtendedLayout = UIRectEdgeNone
UISearchController
translucent = NO,在點選搜尋,動畫之後整個searchBar跑出螢幕外,解決辦法:
self.navigationController.extendedLayoutIncludesOpaqueBars = YES;
extendedLayoutIncludesOpaqueBars意思是額外佈局是否包括不透明的Bar,預設為NO,意味著如果導航條或者TabBar非透明,view內容不會被他們遮擋,如果該屬性設定為YES,那麼在導航條或者TabBar非透明的情況下,view的內容將會被他們遮擋(原點為0,0),該屬性僅僅對非透明的Bar控制元件有效。
蘋果對UIViewController提供了以下幾個屬性供開發者使用:
@property(nonatomic,assign) BOOL wantsFullScreenLayout NS_DEPRECATED_IOS(3_0, 7_0) __TVOS_PROHIBITED; // Deprecated in 7_0, Replaced by the following:
@property(nonatomic,assign) UIRectEdge edgesForExtendedLayout NS_AVAILABLE_IOS(7_0); // Defaults to UIRectEdgeAll
@property(nonatomic,assign) BOOL extendedLayoutIncludesOpaqueBars NS_AVAILABLE_IOS(7_0); // Defaults to NO, but bars are translucent by default on 7_0.
@property(nonatomic,assign) BOOL automaticallyAdjustsScrollViewInsets API_DEPRECATED_WITH_REPLACEMENT("Use UIScrollView's contentInsetAdjustmentBehavior instead", ios(7.0,11.0),tvos(7.0,11.0)); // Defaults to YES
相關文章
- java BASE64處理Java
- 64位程式池HashCode相容處理
- UISearchControllerUIController
- 藍屏處理日誌: FuFlt64.sys
- UIScrollView載入子檢視偏移64的問題UIView
- base64 , blob,url圖片的處理方式
- 64 位 ARM 處理器意味著什麼?
- IOS UISearchBar UISearchController使用iOSUIController
- 64位處理器的潛能還沒有完全發揮
- 最低售價僅598元 64位處理器手機盤點
- Sun推出64執行緒通用處理器 號稱世界最快(圖)執行緒
- 蘋果文件 UISearchController的介紹蘋果UIController
- [譯]UISearchController 教程:開始使用UIController
- HTC M9 Plus配置全曝光:聯發科八核64位處理器
- 紅米Note 2配置曝光 64位驍龍615八核處理器
- Processing 網格(棋盤格)無限偏移紋理動畫動畫
- iOS UISearchController樣式全面設定iOSUIController
- 三星領世旗艦Ⅲ報價6783元 搭64位處理器
- 疫情之下,遊戲向上遊戲
- 文字向上滾動
- 元素偏移量
- 多對一處理 和一對多處理的處理
- 記憶體偏移(RVA)與檔案偏移(offset)相互轉換記憶體
- win10 64位找不到網路介面卡驅動怎麼處理Win10
- 16g記憶體win10 64位玩劍靈閃退如何處理記憶體Win10
- 微軟Win10 Redstone更新未來可能將會支援ARM64處理器微軟Win10
- 64位win10執行不了大航海怎麼解決_64位win10執行不了大航海如何處理Win10
- JSP 異常處理如何處理?JS
- windows批處理之一:字串處理Windows字串
- javaWeb 每天積極向上JavaWeb
- 紅米2手機正式開啟預約 64位處理器 售價699元
- access偏移注入原理
- kafka的偏移量Kafka
- javascript - 滑鼠偏移量JavaScript
- kafka重置偏移量Kafka
- 影像處理或其他多媒體處理中的值溢位處理
- PHP錯誤處理和異常處理PHP
- 處理百萬級以上的資料處理