- (void)resetContentOffsetIfNeeded { CGPoint contentOffset = self.contentOffset; if(self.contentSize.height <= self.bounds.size.height) { return; } float bottomEdge = (self.contentSize.height - self.bounds.size.height); //scroll over top if (contentOffset.y < 0.0) { float ori = contentOffset.y; contentOffset.y = self.contentSize.height / 3.0 + contentOffset.y; NSLog(@"content y offset %f:%f",ori,contentOffset.y); } //scroll over bottom else if (contentOffset.y >= bottomEdge) { float ori = contentOffset.y; float offsetOver = contentOffset.y - bottomEdge; contentOffset.y = (self.contentSize.height / 3.0)*2 - self.bounds.size.height +offsetOver; NSLog(@"content y offset %f:%f bounds:%f",ori,contentOffset.y,self.bounds.size.height); } [self setContentOffset: contentOffset]; }
(void)resetContentOffsetIfNeeded {
CGPoint contentOffset = self.contentOffset;
if(self.contentSize.height <= self.bounds.size.height) {
return;
}
float bottomEdge = (self.contentSize.height - self.bounds.size.height);
//scroll over top
if (contentOffset.y < 0.0) {
float ori = contentOffset.y;
contentOffset.y = self.contentSize.height / 3.0 + contentOffset.y;
NSLog(@"content y offset %f:%f",ori,contentOffset.y);
}
//scroll over bottom
else if (contentOffset.y >= bottomEdge) {
float ori = contentOffset.y;
float offsetOver = contentOffset.y - bottomEdge;
contentOffset.y = (self.contentSize.height / 3.0)*2 - self.bounds.size.height +offsetOver;
NSLog(@"content y offset %f:%f bounds:%f",ori,contentOffset.y,self.bounds.size.height);
}
[self setContentOffset: contentOffset];
}