最近在一个项目中集成了一个第三方库,云脉的身份证扫描识别SDK(试用版),那个代码写的真差啊。照着demo集成了上去,但是每当识别完之后回调 dismissViewControllerAnimated: completion: 的时候,出现屏幕错乱。 我是A控制器presentB控制器,B控制器dismiss掉,A是竖屏,B是横屏。
各种修改代码,改SDK,无法解决。最后,无意间想到想到,回调会不会是放在了子线程中,最后把回调delegate的方法放在主线程中,结果好了。
所以:一定要确保dismissViewControllerAnimated在主线程中,要不然会出现很奇怪的bug。