2013-06-21 48 views
0

我用波纹管代码,以便在UIWebView的滚动速度滚动速度, 比较以前的滚动它的优秀和良好,但我的克林特并不满意,他问这样如何提高UIWebView的

滚动仍然感觉僵硬。

webviews.scrollView.decelerationRate = UIScrollViewDecelerationRateNormal; 

[webviews loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"site URL"]]]; 
    webviews.scalesPageToFit =YES;` 

没有任何选项来增加滚动速度?

回答

0

对你UIScrollViewDelegate这些属性

CGPoint lastOffset; 
NSTimeInterval lastOffsetCapture; 
BOOL isScrollingFast; 

然后有这样的代码为您scrollViewDidScroll:

- (void) scrollViewDidScroll:(UIScrollView *)scrollView {  
    CGPoint currentOffset = self.currentChannelTableView.contentOffset; 
    NSTimeInterval currentTime = [NSDate timeIntervalSinceReferenceDate]; 

    NSTimeInterval timeDiff = currentTime - lastOffsetCapture; 
    if(timeDiff > 0.1) { 
     CGFloat distance = currentOffset.y - lastOffset.y; 
     //The multiply by 10,/1000 isn't really necessary....... 
     CGFloat scrollSpeedNotAbs = (distance * 10)/1000; //in pixels per millisecond 

     CGFloat scrollSpeed = fabsf(scrollSpeedNotAbs); 
     if (scrollSpeed > 0.5) { 
      isScrollingFast = YES; 
      NSLog(@"Fast"); 
     } else { 
      isScrollingFast = NO; 
      NSLog(@"Slow"); 
     }   

     lastOffset = currentOffset; 
     lastOffsetCapture = currentTime; 
    } 
}