// 代码地址: https://github.com/CoderMJLee/MJRefresh
|
// 代码地址: http://code4app.com/ios/%E5%BF%AB%E9%80%9F%E9%9B%86%E6%88%90%E4%B8%8B%E6%8B%89%E4%B8%8A%E6%8B%89%E5%88%B7%E6%96%B0/52326ce26803fabc46000000
|
// UIScrollView+Extension.m
|
// MJRefreshExample
|
//
|
// Created by MJ Lee on 14-5-28.
|
// Copyright (c) 2014年 小码哥. All rights reserved.
|
//
|
|
#import "UIScrollView+MJExtension.h"
|
#import <objc/runtime.h>
|
|
#pragma clang diagnostic push
|
#pragma clang diagnostic ignored "-Wunguarded-availability-new"
|
|
@implementation UIScrollView (MJExtension)
|
|
static BOOL gt_ios_11_;
|
+ (void)load
|
{
|
// 缓存判断值
|
gt_ios_11_ = [[[UIDevice currentDevice] systemVersion] compare:@"11.0" options:NSNumericSearch] != NSOrderedAscending;
|
}
|
|
- (UIEdgeInsets)mj_inset
|
{
|
#ifdef __IPHONE_11_0
|
if (gt_ios_11_) {
|
return self.adjustedContentInset;
|
}
|
#endif
|
return self.contentInset;
|
}
|
|
- (void)setMj_insetT:(CGFloat)mj_insetT
|
{
|
UIEdgeInsets inset = self.contentInset;
|
inset.top = mj_insetT;
|
#ifdef __IPHONE_11_0
|
if (gt_ios_11_) {
|
inset.top -= (self.adjustedContentInset.top - self.contentInset.top);
|
}
|
#endif
|
self.contentInset = inset;
|
}
|
|
- (CGFloat)mj_insetT
|
{
|
return self.mj_inset.top;
|
}
|
|
- (void)setMj_insetB:(CGFloat)mj_insetB
|
{
|
UIEdgeInsets inset = self.contentInset;
|
inset.bottom = mj_insetB;
|
#ifdef __IPHONE_11_0
|
if (gt_ios_11_) {
|
inset.bottom -= (self.adjustedContentInset.bottom - self.contentInset.bottom);
|
}
|
#endif
|
self.contentInset = inset;
|
}
|
|
- (CGFloat)mj_insetB
|
{
|
return self.mj_inset.bottom;
|
}
|
|
- (void)setMj_insetL:(CGFloat)mj_insetL
|
{
|
UIEdgeInsets inset = self.contentInset;
|
inset.left = mj_insetL;
|
#ifdef __IPHONE_11_0
|
if (gt_ios_11_) {
|
inset.left -= (self.adjustedContentInset.left - self.contentInset.left);
|
}
|
#endif
|
self.contentInset = inset;
|
}
|
|
- (CGFloat)mj_insetL
|
{
|
return self.mj_inset.left;
|
}
|
|
- (void)setMj_insetR:(CGFloat)mj_insetR
|
{
|
UIEdgeInsets inset = self.contentInset;
|
inset.right = mj_insetR;
|
#ifdef __IPHONE_11_0
|
if (gt_ios_11_) {
|
inset.right -= (self.adjustedContentInset.right - self.contentInset.right);
|
}
|
#endif
|
self.contentInset = inset;
|
}
|
|
- (CGFloat)mj_insetR
|
{
|
return self.mj_inset.right;
|
}
|
|
- (void)setMj_offsetX:(CGFloat)mj_offsetX
|
{
|
CGPoint offset = self.contentOffset;
|
offset.x = mj_offsetX;
|
self.contentOffset = offset;
|
}
|
|
- (CGFloat)mj_offsetX
|
{
|
return self.contentOffset.x;
|
}
|
|
- (void)setMj_offsetY:(CGFloat)mj_offsetY
|
{
|
CGPoint offset = self.contentOffset;
|
offset.y = mj_offsetY;
|
self.contentOffset = offset;
|
}
|
|
- (CGFloat)mj_offsetY
|
{
|
return self.contentOffset.y;
|
}
|
|
- (void)setMj_contentW:(CGFloat)mj_contentW
|
{
|
CGSize size = self.contentSize;
|
size.width = mj_contentW;
|
self.contentSize = size;
|
}
|
|
- (CGFloat)mj_contentW
|
{
|
return self.contentSize.width;
|
}
|
|
- (void)setMj_contentH:(CGFloat)mj_contentH
|
{
|
CGSize size = self.contentSize;
|
size.height = mj_contentH;
|
self.contentSize = size;
|
}
|
|
- (CGFloat)mj_contentH
|
{
|
return self.contentSize.height;
|
}
|
@end
|
#pragma clang diagnostic pop
|