我有一个UIPageController
放在我的 xib 文件中,所以我可以正确放置,但是在 xib 中设置的“currentPage”的值是 currentPage 在我尝试将其设置为其他值时假定的值,如下所示,UIScrollView
当从中间开始时(即不是第 0 页)将 my 设置为正确的初始图像的代码行:
aScrollView.contentOffset = CGPointMake((currentIndex + 0.0) * screenWidth, 0.0);
调用
-(void) scrollViewDidScroll: (UIScrollView*) aScrollView
{
// Update the page control to match the current scroll:
CGPoint offset = aScrollView.contentOffset;
float width = self.view.frame.size.width;
int pageNumber = (int)(offset.x / width);
uiPageControl.currentPage = pageNumber;
NSLog(@"%g // %g = %d", offset.x, width, (int)(offset.x/width));
}
pageNumber 整数是正确的,所以我从偏移量中正确计算了所需的页码。但是,当我尝试手动(以编程方式)设置 currentPage 时,它没有设置为 pageNumber,而是设置为 xib 中的值。
简单的解决方案是不使用 xib 并以编程方式完成所有操作,但我想知道如何继续UIPageController
在 xib 中使用,因为在不知道坐标等的情况下很容易放置。通常,在 xib 中设置的属性是以编程方式可覆盖,所以这个错误真的让我感到惊讶。关于如何正确设置 currentPage 的任何建议?
谢谢你的帮助!