Tencent / QMUI_iOS

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

iOS 12 下,导航栏左边返回按钮点击无反应。 #1372

Closed lifution closed 1 year ago

lifution commented 2 years ago

Bug 表现 在 iOS 12 下,导航栏左边的返回按钮点击没有反应,偶尔可以正常返回上一页面,但大部分情况下是无响应。

截图 Kapture.gif

如何重现 从任一页面点击 push 到下一页面,然后点击导航栏左边的返回按钮。

预期的表现 正常情况下,应该是 pop 返回上一页面。

其他信息

MoLice commented 1 year ago

动画结束前尝试 push/pop 是无效的,你的 Xcode 控制台日志应该会告诉你。

lifution commented 1 year ago

@MoLice 我上面附带动图呢,专场动画早就结束了。

MoLice commented 1 year ago

@MoLice 我上面附带动图呢,专场动画早就结束了。

@lifution 并不是肉眼看到界面停止就是结束,还有一小会才是真正结束,也即新界面 viewDidAppear: 时。

你也可以 Xcode 里搜索 ”isViewControllerTransiting = “ 查看相关代码。

image

如果确定不是 isViewControllerTransiting 的情况,再告知一下再查。

lifution commented 1 year ago

@MoLice 没法验证了,Xcode 14 已经无法下载 iOS 12 的模拟器了,这个问题是今年 2 月份发现的,时间隔得太久了,不过我隐约记得我发现这个问题时是等了好一会后才点击返回的,上面录的动图是为了节约图片大小所以肉眼看到停了就点击了,你说的那个我也是知道的,不过这个问题应该不是专场动画未结束的问题,我上面动图的最后一次点击之前,点击导航栏返回按钮是无效的,但是可以看到边缘手势滑动返回是可以的,但是点击导航栏左侧返回按钮却没反应,不知是哪里出了问题。