美文网首页
iOS popViewController 失败

iOS popViewController 失败

作者: oneDemo | 来源:发表于2015-08-20 15:42 被阅读1857次

    iOS7在viewDidLoad中,请求网络数据,(网络请求开辟线程),在请求失败的时候,在主线程中 popViewController。但是怎么也pop不出去。

    原因是,网络请求完成的时候,竟然还没有调用-(void) viewDidAppear.也就是界面没有完全加载,导致我直接跳转界面会失败。

    解决办法:不要再viewDidLoad中popViewController,在ios8以上勉强可以执行,但是ios7这样执行,界面会卡死,系统会crash。因此尽量不要再viewDidLoad中pop控制器。

    我的解决办法是,添加一个标记,在网络请求失败的时候改变标记,ViewDidApper中执行该方法。

    - (void)viewDidAppear:(BOOL)animated {

    [super viewDidAppear:animated];

    if(!isNetWorkError) {

    [self.navigationController popViewControllerAnimated:YES];

    }

    }

    相关文章

      网友评论

          本文标题:iOS popViewController 失败

          本文链接:https://www.haomeiwen.com/subject/cgjgqttx.html