为什么页面控制点从一页更改为下一页

时间:2012-07-23 10:54:59

标签: iphone ios uiscrollview uiimage uipagecontrol

我正在开发一个ipad应用程序,我们在其中显示了scrollview上的大量图像,并且我在底部添加了页面控件,当我们将图像从一个页面滚动到下一页面时,它滚动得很好而且流畅但是我不知道为什么页面控制点需要时间从一个点转换到另一个点,即当我从一个页面滚动到下一页面时立即到达下一页但是页面控制点需要一些时间任何一个请告诉我为什么这个正在发生,任何帮助都非常感谢。我在ScrollViewDidScroll上的代码是 -

- (void)scrollViewDidScroll:(UIScrollView *)sender {

    Paddle8Singleton *paddle8Singleton = [Paddle8Singleton sharedMaster];       
    CGFloat pageWidth = sender.frame.size.width;
    DebugLog(@"current offsetX %f and cus offset %f",sender.contentOffset.x,sender.frame.size.width*currIndex);
    int page;
    if ([paddle8Singleton.selectedFilteredArtistDetailsDict count]>2) {

        page = floor((sender.frame.size.width*currIndex - pageWidth / 2) / pageWidth) + 1;
    }
    else{
        page = floor((sender.contentOffset.x - pageWidth / 2) / pageWidth) + 1;                
    }

    if([self ShowAlternateImageButtonForCurrentArtwork:page]&& barsHidden)
    {
        secondaryImageButton.userInteractionEnabled = YES;
        secondaryImageButton.hidden = NO;
        [self.view bringSubviewToFront:secondaryImageButton];
    }
    else
    {
        secondaryImageButton.userInteractionEnabled = NO;
        secondaryImageButton.hidden = YES;
    }

    pageControll.currentPage = page;
    self.selectedImageIndex = page;
    [self updateInfoView:page];
}

谢谢:

1 个答案:

答案 0 :(得分:1)

你不应该对发件人做。

CGFloat pageWidth = self.yourview.frame.size.width;
int page = floor((self.yourview.contentOffset.x - pageWidth / 2) / pageWidth) + 1;
self.pageControl.currentPage = page;