2010-08-09 43 views
0

我有一个麻烦,我需要做滚动视图与PDF(页)内容,该内容具有的第一个8页大小,当我已经见第8页,我需要扩大内容大小的新页面和做所以,该滚动视图显示新的页面,但他再次显示从开始滚动页面的页面。的UIScrollView setContentSize

我需要实现什么?

+1

将scrollview尺寸设置为只适合8页是否有特殊原因?从一开始就使所有页面都适合并且在页面变得可见时加载页面似乎更容易。 – 2010-08-09 09:38:34

+0

有理由,我必须从缓冲区实现加载页面,并且在缓冲区中只能找到8页,当缓冲区中的页面结束时,我们将更多页面添加到缓冲区中。与pdf的所有页面我没有问题) – kenshin 2010-08-09 11:10:22

回答

0

也许你要找的是setContentOffset。

+0

如果我实现setContentOffset,我的滚动开始从第一页滚动,而不是从当前页面滚动。 – kenshin 2010-08-09 08:38:31

+0

您需要为当前页面设置内容偏移量。 – 2010-08-09 08:48:55

+0

告诉我你是如何实现setContentOffset的,我会看看我能否告诉你什么是错的。 – 2010-08-09 08:51:23

0
if(currentPoint.x == screenWidth){ 

    currentPage += 1; 
    screenWidth += 768.0f; 

    [self loadScrollViewWithPage:currentPage]; 

    if(realLastPage - currentPage <= step){ 

     for(int i = 0; i < step; i++){ 

      [myPage loadViewForPage:page cycles:realLastPage + i append:YES filename:filename array:pageArray]; 
      NSLog(@"size of pageArray after adding elements: %d", [pageArray count]); 
      NSLog(@"page # added: %d", realLastPage + i); 

      //[pageArray removeObjectsInRange:NSMakeRange(0, step)]; 
      //NSLog(@"size of pageArray after deleting elements: %d", [pageArray count]); 

     } 
     realFirstPage += step; 
     contentInstep += step; 
     scroller.contentInset = UIEdgeInsetsMake(0, 0, 0, kScrollObjWidth * contentInstep); 
     NSLog(@"real first page: %d; contentInstep: %d", realFirstPage, contentInstep); 

    } 
} 

NSLog(@"currentPage: %d", currentPage); 

它的代码,现在我尝试实现scroller.contentInset来扩展我的滚动内容大小。

0

我会重申Erik B所说的:使滚动视图尽可能大,首先需要放置,然后按需加载页面。