Tencent / QMUI_iOS

QMUI iOS——致力于提高项目 UI 开发效率的解决方案
http://qmuiteam.com/ios
Other
7.11k stars 1.39k forks source link

4.2.1版本上同样会出现侧滑黑边,我在微信读书app上也测试出同样的问题 #1125

Open wuhuanlong opened 4 years ago

wuhuanlong commented 4 years ago

我在微信读书app上也测试出tong同样的问题 IMG20201023154623.zip

_Originally posted by @wuhuanlong in https://github.com/Tencent/QMUI_iOS/issues/1111#issuecomment-715098638_

wuhuanlong commented 4 years ago

IMG20201023161501.zip 企业微信上测试出的问题

wuhuanlong commented 4 years ago

我们升级到了QMUIIKit 4.2.1版本,还是可以出现黑屏现象,只不过概率降低了很多。在4.2.1的官方demo中,基本上复线不了,我这边实在是排查不出原因。如果可以麻烦您帮忙在4.1.1版本的官方demo上排查。

wuhuanlong commented 4 years ago

经排查,发现是pop事件没有判断当前过度动画是否正在进行导致的 我们继承QMUINavigationController重写popViewControllerAnimated方法,判断是否isViewControllerTransiting,解决了 image

ZXCheng commented 4 years ago

我也遇到这种情况,,app变成假死状态,需要退到后台挂起再重新点开就好了,但是过渡动画已经是乱的了,神奇的是我单单只有一个vc会这样,别的地方用到这个vc也会这样,我还以为是我写的页面有问题,推翻重写还是这样,只能把这个vc的手势返回给取消了

ZXCheng commented 4 years ago

经排查,发现是pop事件没有判断当前过度动画是否正在进行导致的 我们继承QMUINavigationController重写popViewControllerAnimated方法,判断是否isViewControllerTransiting,解决了 image

我尝试用你这种方式,感觉出现的频率低了点,但还是会出现

wuhuanlong commented 4 years ago

经排查,发现是pop事件没有判断当前过度动画是否正在进行导致的 我们继承QMUINavigationController重写popViewControllerAnimated方法,判断是否isViewControllerTransiting,解决了 image

我尝试用你这种方式,感觉出现的频率低了点,但还是会出现

我们这基本是不会出现,你看下你们那是不是别的原因

ZXCheng commented 4 years ago

经排查,发现是pop事件没有判断当前过度动画是否正在进行导致的 我们继承QMUINavigationController重写popViewControllerAnimated方法,判断是否isViewControllerTransiting,解决了 image

我尝试用你这种方式,感觉出现的频率低了点,但还是会出现

我们这基本是不会出现,你看下你们那是不是别的原因

A push 到 B,再由B手势快速返回到A(控制器A包含有两个同级的viewpage(a和b),b里面又嵌套一个viewpage(c),每个viewpage都在willappear和willdisappear调用begintransition,在didappear和diddisapper调用endtransition),手势快速返回就很高几率出现app假死,改来改去,感觉问题就出在过渡动画上,就是无法解决问题

MoLice commented 3 years ago

QMUI 配置表里有个开关叫“PreventConcurrentNavigationControllerTransitions”,请确认是否在业务项目里关闭了?

ZXCheng commented 3 years ago

QMUI 配置表里有个开关叫“PreventConcurrentNavigationControllerTransitions”,请确认是否在业务项目里关闭了?

YES/NO都会使App快速侧滑返回时假死,区别是从挂起变成活跃YES会使过渡动画乱了,NO过渡动画正常