代码之家  ›  专栏  ›  技术社区  ›  Rob

选项卡栏问题:-[uilayoutContainerView哈希]:消息发送到释放的实例

  •  0
  • Rob  · 技术社区  · 16 年前

    我好像在处理一些事情,比如标签栏本身,导航控制器,或者????,当我转到一个特定的视图控制器,然后点击标签栏到一个特定的标签(例如,如果我点击中间的标签,3个标签中的3个,没问题,但是如果我点击最右边的标签,我会崩溃)。我的程序基本上已经完成了,现在我有一个相当大的代码库。任何人都有调试这个的建议——我一直在等待这个问题的解决。我的意思是,看看dealloc例程和相邻代码中的任何发布。有什么比“手动”更简单的建议吗?谢谢!

    1 回复  |  直到 9 年前
        1
  •  1
  •   hyuan    16 年前

    如果不知道更多,我会怎么做。

    1. 在日志查看器中,在gdb中发生异常后键入backtrace。希望,这会给你一条精确的线,显示哪个对象被释放了太多次。

    2. 查找对该对象的引用,并通过检查查看是否可以找到不必要的释放、自动释放等。您不能释放/自动释放您的执行路径不拥有的任何内容(通过alloc)。

    您可能会幸运地打印出此对象的保留计数(通过将retaincount消息发送到有问题的对象)。尽管开发人员的文档强烈建议这是毫无意义的,而且没有成果,但我发现它有时可以帮助我缩小意外释放的范围。