2013-06-21 28 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; 
    } 
}