zoukankan      html  css  js  c++  java
  • iOS 7中使用UINavigationController进行pop崩溃

    最近在一个项目中遇到一种情况,push到一个界面,如果那个界面未请求到数据,则直接pop回去,然而使用 [self.navigationController popViewControllerAnimated:YES];在iOS6、8、9都没有问题,但是在iOS7中发生不能pop出去的情况,其实该pop出来的页面其实已经从navigation stack中pop出去了,但是UI的动画却没有及时结束,然后你又从已经不在navigation stack中的view,继续动画,然后你就会发现卡在那里了,再点击继而程序崩溃!
    那么你会想了,我把动画关掉 [self.navigationController popViewControllerAnimated:NO]; 然后。。。然并卵~
    既然崩溃的原因是view已经pop出去了,才进行UI的animate,那么我们何不做个延迟,等view的pop动作结束,然后再进行UI的动画呢?
     //延时执行动画
     dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
            [self.navigationController popViewControllerAnimated:YES];
      });
    这样就可以适配iOS7了!!!!!
  • 相关阅读:

    创建分区表
    提示 适配器错误
    新手-ios
    web中绝对路径换虚拟路径
    UpdatePanel1里面使用FileUpload控件
    批量将一个表数据导入到另外一个表里面(不同服务器也可以)
    oracle 定时 job
    修改oracle字符集
    Oracle定时备份数据库
  • 原文地址:https://www.cnblogs.com/10-19-92/p/5178739.html
Copyright © 2011-2022 走看看