diff --git a/ODRefreshControl/ODRefreshControl.m b/ODRefreshControl/ODRefreshControl.m index 362e61c..dd0872e 100644 --- a/ODRefreshControl/ODRefreshControl.m +++ b/ODRefreshControl/ODRefreshControl.m @@ -25,6 +25,7 @@ #define kMinArrowRadius 5 #define kMaxArrowRadius 7 #define kMaxDistance 53 +#define kTopOffset 44//offset of the parent table-view (e.g. translucent header-bar) @interface ODRefreshControl () @@ -53,7 +54,7 @@ - (id)initInScrollView:(UIScrollView *)scrollView { - (id)initInScrollView:(UIScrollView *)scrollView activityIndicatorView:(UIView *)activity { - self = [super initWithFrame:CGRectMake(0, -(kTotalViewHeight + scrollView.contentInset.top), scrollView.frame.size.width, kTotalViewHeight)]; + self = [super initWithFrame:CGRectMake(0, -(kTotalViewHeight + scrollView.contentInset.top - kTopOffset), scrollView.frame.size.width, kTotalViewHeight)]; if (self) { self.scrollView = scrollView; @@ -168,7 +169,7 @@ - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(N if ([keyPath isEqualToString:@"contentInset"]) { if (!_ignoreInset) { self.originalContentInset = [[change objectForKey:@"new"] UIEdgeInsetsValue]; - self.frame = CGRectMake(0, -(kTotalViewHeight + self.scrollView.contentInset.top), self.scrollView.frame.size.width, kTotalViewHeight); + self.frame = CGRectMake(0, -(kTotalViewHeight + self.scrollView.contentInset.top - kTopOffset), self.scrollView.frame.size.width, kTotalViewHeight); } return; }