[iOS]利用UISegmentedControl进行页面跳转时出现闪烁的问题

(其实这是一个求助贴)

笔者负责的项目中有一个页面是用UISegmentedControl进行点击切换的,就是这样的:

[iOS]利用UISegmentedControl进行页面跳转时出现闪烁的问题_第1张图片

今天在测试的时候发现,从“我的评论”跳转到“未读消息”的时候,“未读消息”本该是为空的页面在切换瞬间竟然有数据显示,但是等切换完成之后还是正常显示为空白页面。总的来说,就是会有页面闪烁的问题。切换的代码是这样的:

[iOS]利用UISegmentedControl进行页面跳转时出现闪烁的问题_第2张图片

逻辑上是没有问题的,但是就是会有这个闪烁的问题。笔者以为是UISegmentedControl这个控件本身的动画或者其他效果的问题,于是写了另外一个demo测试。但是在另外一个demo中,并没有类似的情况发生。于是笔者想了很多方法,包括不使用UISegmentedControl改为按钮的组合控件等,但是又觉得不应该是控件的问题,因为之前也有过使用这个控件的经历,也没出现类似的问题。于是笔者又想:会不会是前一个页面数据太多导致切换到下一个页面的时候将上一个页面的东西也进行了显示还没切换干净呢(这个原因我也觉得有点不可思议)?

基于这个原因,笔者将数据源在每一次切换请求最新数据时都清空了,就加了这句代码:

[iOS]利用UISegmentedControl进行页面跳转时出现闪烁的问题_第3张图片

然后。。。竟然显示好了。。。

好吧,说了一堆废话,其实我到现在还不懂为啥会出现闪烁的问题。。。

有哪位大神出来解释一下吗?感激不尽啊。。。

你可能感兴趣的:([iOS]利用UISegmentedControl进行页面跳转时出现闪烁的问题)