gpt4 book ai didi

ios - UIPageControl 显示不正确的页面

转载 作者:行者123 更新时间:2023-11-29 11:13:35 27 4
gpt4 key购买 nike

我有一个包含多个表格的 UIScrollView 和一个跟踪用户当前正在查看哪个页面的 UIPageControl。它工作正常,直到我开始在 tableview 上向上滚动,此时 UIPageControl 调整并(错误地)说我们在第一页上。

这是我的代码:

- (void)scrollViewDidScroll:(UIScrollView *)_scrollView {
if (pageControlIsChangingPage) {
return;
}

/*
* We switch page at 50% across
*/
CGFloat pageWidth = _scrollView.frame.size.width;
int page = floor((_scrollView.contentOffset.x - pageWidth / 2) / pageWidth) + 1;
pageControl.currentPage = page;
}

还有这个:

- (void)scrollViewDidEndDecelerating:(UIScrollView *)_scrollView {
pageControlIsChangingPage = NO;
}

不确定究竟是什么导致了这种情况发生。 . .有任何想法吗?我很难过:(

最佳答案

我认为问题在于 UITableView 和 UIScrollView 都调用了相同的 ScrollView 方法,因为它们都将委托(delegate)设置为 self。我在主 ScrollView 中添加了一个标签,然后在调整页面时通过对标签执行检查来解释它,就像这样

if (_scrollView.tag == 100) {

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

}

最后

关于ios - UIPageControl 显示不正确的页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10442294/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com