1.狀態欄
#define KSTA_H [[UIApplication sharedApplication] statusBarFrame].size.height
2.導航欄
#define KNAV_H (KSTA_H + 44)
3.標簽欄 先獲取安全距離在加上標簽欄高度
//獲取底部安全距離 + (CGFloat)safeAreaHeight { if (@available(iOS 11.0, *)) { UIWindow *mainWindow = [[[UIApplication sharedApplication] delegate] window]; return mainWindow.safeAreaInsets.bottom; } return 0; }
#define KTAB_H ([Tool safeAreaHeight] + 49)
4.全面屏機型判斷
+(BOOL)isFullScreenIphone { BOOL isFullIphone = NO; if (@available(iOS 11.0, *)) { UIWindow *mainWindow = [[[UIApplication sharedApplication] delegate] window]; if (mainWindow.safeAreaInsets.bottom > 0.0) { isFullIphone = YES; } } return isFullIphone; }