不稳定的UIPageControls

Str*_*rer 0 iphone uipagecontrol

我在视图中使用两个UIPageControl来反映章节和页面.所以我定义了一个名为chapterCount的UIPageControl和一个名为pageCount的文件,以显示用户所在的位置.我使用滑动处理页面的翻转,而不是使用UIPageControls(因此没有为它们定义方法).

我在用户使用以下代码更改页面时更改其值:

chapterCount.numberOfPages = chapters;
chapterCount.currentPage = chapterNumber;

pageCount.numberOfPages = pages;
pageCount.currentPage = pageNumber;

[chapterCount updateCurrentPageDisplay];
[pageCount updateCurrentPageDisplay];
Run Code Online (Sandbox Code Playgroud)

章节,chapterNumber,pages和pageNumber都是整数.

我第一次浏览页面时通常可以正常工作,但是当我转到上一章或开始新的章节时,第一个(或最后一个取决于方向)点不显示.请看图片(上半部分缺少一个点,下部一个OK).

alt text http://img80.imageshack.us/img80/3339/pagecontrol.png

它更新控件的代码相同,有时我得到一个点,有时不是.当我使用NSLOG检查变量时,它们是正确的(例如,对于上面两张图片都是相同的).

我检查了Apple的文档并尝试了他们的例子,但没有运气.

我应该在哪里开始排除故障 我疯了!

Str*_*rer 5

我终于找到了问题:-)

UUPageControl在下次更新时将无法正确显示为页数为0的UIPageControl.我正在从一个数组中读取章节和页码,并且在开始时(让我们说这本书的封面)没有页面也没有章节要显示,所以我很乐意将这些设置为0.因为我不想更改源数据在我的数组中,我使用MAX(页面,1)作为numberOfPages,所以现在它的工作就像发条一样.