iOS11中UIToolBar结构改变了,导致使用 UIToolBar addsubview 添加的button都接受不到手势。
UIToolBar 原来的结构是
原tool bar层次.png
subview都会加在UIVisualEffectFilterView上
现在的结构是:
现tool bar层次.png
subview都会加在UIVisualEffectSubview上,然而UIToolbarContentView是可点击,又在UIBarBackground前面,所以我们addsubview添加的button都不可点击。
———————————上面是更新 2017-10-25—————————————
昨天测试人员升级到了iOS11.0.3,测试的时候发现,大部分弹框提示都无法点击了
排查发现无法点击的弹框都是UIToolBar做的弹框,查看视图层次发现UIToolBar中的UIToolBarContentView(好像是这个名字)挡在了我们自己添加的button前面,所以button无响应
经过测试发现Xcode9打的包在iOS11.0.3上都会出现类似情况,Xcode9打的包在iOS10上面是正常的;Xcode8打的包在iOS所有版本上都是正常的(写稿时iOS最新版本是iOS11.0.3)
搞了一下午,题主告诉自己冷静冷静,要有条理。出现这个情况也是坑。
不过一想想这都被我排查出来了,题主还是很骄傲的😄😄