UI 界面

导航栏适配遇到的坑

2019-11-04  本文已影响0人  枫叶1234

控制rootView布局的几个属性

总结
ScrollView的适配宏
#define IsiPhoneX ([UIScreen instancesRespondToSelector:@selector(currentMode)] ? CGSizeEqualToSize(CGSizeMake(1125, 2436), [[UIScreen mainScreen] currentMode].size) : NO)
#define TabBarHeight        (IsiPhoneX ? 83 : 49)
#define NavBarHeight        (IsiPhoneX ? 88 : 64)

// ScrollView的适配
#define ADJUSTS_SCROLLVIEW_INSETS_NO(scrollView, vc)\
vc.extendedLayoutIncludesOpaqueBars = YES;\
scrollView.contentInset = UIEdgeInsetsMake(NavBarHeight, 0, TabBarHeight, 0);\
scrollView.scrollIndicatorInsets = scrollView.contentInset;\
do {\
_Pragma("clang diagnostic push")\
_Pragma("clang diagnostic ignored \"-Warc-performSelector-leaks\"")\
if (@available(iOS 11.0, *)) {\
    scrollView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;\
} else {\
    vc.automaticallyAdjustsScrollViewInsets = NO;\
}\
_Pragma("clang diagnostic pop")\
} while (0)
上一篇下一篇

猜你喜欢

热点阅读