首页  >  问答  >  正文

objective-c - iOS程序在ios8的系统下页面跳转后闪退,ios9的系统下不会闪退

1、app在ios8的机子上真机调试,在页面跳转后,在返回到上级界面,再次点击屏幕,就出现闪退.
开启僵尸对象,打印信息如下:* -[_UIWebViewScrollView _systemGestureStateChanged:]: message sent to deallocated instance 0x3183a00
2、app在ios9 的机子上真机调试一切正常。

天蓬老师天蓬老师2762 天前566

全部回复(9)我来回复

  • PHP中文网

    PHP中文网2017-04-18 09:50:01

    楼主,我也遇到了这个问题,但是还没有解决,请问你现在解决了吗,可以交流一下吗

    回复
    0
  • 黄舟

    黄舟2017-04-18 09:50:01

    使用iOS8上的delegatedatasource时要格外小心。

    iOS8上有些delegatedatasource是使用assign来声明的,若不及时释放,极易造成crash。

    建议在所有使用delegate的地方,在dealloc中均将其显示地置为nil

    - (void)dealloc
    {
        _tableView.delegate = nil;
        _tableView.datasource = nil;
        _scrollView.delegate = nil;
        _gesture.delegate = nil;
    }

    回复
    0
  • ringa_lee

    ringa_lee2017-04-18 09:50:01

    • (void)dealloc
      {

      雷雷

      }

    回复
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-18 09:50:01

    viewWillDisappear 里写一句 [self.webView stopLoading];

    回复
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-18 09:50:01

    问题找到了 是因为我引用了一个第三方扣 使用swizzle方法导致内存泄露。

    回复
    0
  • 天蓬老师

    天蓬老师2017-04-18 09:50:01

    请问楼主使用的是那个第三方?介不介意透露下?我这也有如此问题......

    回复
    0
  • ringa_lee

    ringa_lee2017-04-18 09:50:01

    找了6个小时 终于找到是哪个库导致的了。。。UIScrollView+HeaderScaleImage!!!!!

    回复
    0
  • 阿神

    阿神2017-04-18 09:50:01

    看一下你的项目里面的UIScrollView分类有没有重写dealloc方法

    回复
    0
  • 高洛峰

    高洛峰2017-04-18 09:50:01

    使用了这个UIScrollView+HeaderScaleImage,那如何解决呢

    回复
    0
  • 取消回复