iOS UIPageViewController翻页总是重复第二页系统bug处理

特别声明:文章多为网络转载,资源使用一般不提供任何帮助,特殊资源除外,如有侵权请联系!

表示有点儿无语了,以为是自己写的逻辑有问题,调了一个多小时,实际有点儿没有头绪了,于是google一下,发现竟然是iOS本身的一个小Bug,苦逼的码农真心伤不起啊。

问题描述:

iOS6使用UIPageViewController通过UIPageViewControllerNavigationDirectionReverse向回跳转翻页时,总会出现下一页不对的情况,因为下一页就是跳转以前的页面所以给你的感觉就是好像上一页被缓存成下一页了。这种情况大多发生在跳转的时候,使用了动画并且切换方式是UIPageViewControllerTransitionStyleScroll.

解决办法1:

__block YourSelfClass *blocksafeSelf = self;
[self.pageViewController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:YES completion:^(BOOL finished){
if(finished)
{
dispatch_async(dispatch_get_main_queue(), ^{
[blocksafeSelf.pageViewController setViewControllers:viewControllers direction:UIPageViewControllerNavigationDirectionForward animated:NO completion:NULL];// bug fix for uipageview controller
});
}
}];

解决办法2(我用这种):

另外为了避免这种情况发生,也可以:
1.不使用UIPageViewControllerTransitionStyleScroll方式
2.切换时animated:NO

未经允许不得转载:作者:SheaYang, 转载或复制请以 超链接形式 并注明出处 技术狗|博客
原文地址:《iOS UIPageViewController翻页总是重复第二页系统bug处理》 发布于2019-10-10

分享到:
赞(0)

评论 抢沙发

6 + 6 =


iOS UIPageViewController翻页总是重复第二页系统bug处理

长按图片转发给朋友

Vieu4.0主题
专业打造轻量级个人企业风格博客主题!专注于前端开发,全站响应式布局自适应模板。

登录

忘记密码 ?

您也可以使用第三方帐号快捷登录

Q Q 登 录
微 博 登 录