Closed KaoUserName closed 5 years ago
QMUICMI.automaticCustomNavigationBarTransitionStyle
的值是否为 NO
,如果为 NO
,请改为 YES
后再测试。或者,在你使用 QMUINavigationBarScrollingAnimator
的那个 viewController 内实现方法 customNavigationBarTransitionKey
并返回一个非空的 NSString
。如果这两种方法仍未能解决问题,请告知。navigationBar
样式的,所以无法下结论,建议提供代码(navigationBar 是共享的,所以前后两个 viewController 均有可能影响它的样式)或者 Demo。QMUIConfiguration.m
内搜索 UINavigationBar appearance
即可看到 7 个匹配结果。该 issue 因不活跃而被关闭。
1和2的问题,当automaticCustomNavigationBarTransitionStyle为 YES 的时候会出现,为 NO 的时候是正常的。
感觉问题的产生是因为使用 runtime 交换的 viewDidAppear:后,新的方法都是没有执行的。我在 UINavigationController+NavigationBarTransition, UIViewController+QMUI,QMUINavigationController 的新交换方法打断点都是没有执行的。
现在产生一个问题是,当前后两个navigationBar不一致时,由于虚拟的假bar是在交换的方法去除的,当前一个bar的颜色是透明的时候,会显示异常。
不知道工程的哪里配置问题,无法在其他Demo重现。
同文件的其他交换方法是执行的
对,我明白你的问题表现是什么,但我无法单纯根据你的表现描述就能定位到问题所在,因为像“方法打了断点都没有执行”,可能导致这种现象的原因太多了。所以目前我能做的是,如果你能提供 Demo,我可以帮你排查,但如果提供不了相关代码,我也无能为力😔
[Uploading testDemo.zip…]() 为了做Demo删减代码时,发现原来是最新版的 UMCAnalytics 的问题。 可能该框架对 UIViewController 的生命周期有做处理,产生的冲突。能重现的demo已上传。
对于您的及时回答表示感谢,也对自己一味的要求感到惭愧。没有做过多的验证,只想从别人那边获取帮助,需要好好改正。
UMCAnalytics 属于闭源框架,就没有排查意义了。建议制作一个空白 Demo,去掉 QMUI,只引入 UMCAnalytics,然后在业务侧自己 swizzle 相关方法,验证是否有问题。如果有问题,说明确实是 UMCAnalytics 内部的实现问题,可以反馈给 UMCAnalytics 团队。
请填写运行环境
All
/iPhone
/模拟器
iOS 12.1, ios10.3
10.0.1
请描述具体问题
相关截图(断点的堆栈、控制台的 log)