UINavigation push会产生SIGABERT问题

时间:2013-08-16 06:36:31

标签: iphone ios ios5 ios6 ios4

我正面临一个问题请让我出去。在我的应用程序中我使用导航表选择我只是将一个字段的详细信息发送到另一个视图但我不知道为什么我收到Sigabert错误它。 即使我正在启用Zoombies,它也没有在控制台中给我任何理由。

如果您对我有任何建议,请告诉我解决方案。

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{

    MyDealDetailViewController *mydeal=[[MyDealDetailViewController alloc]initWithNibName:@"MyDealDetailViewController" bundle:nil];

//This arrayForGetDeal have values that are fetched from database.

  mydeal._getDealObject=[_arrayForGetDeal objectAtIndex:indexPath.row];

//on the below line i am getting SIGABERT.

  [self.navigationController pushViewController:mydeal animated:YES];

 [mydeal release];

}

3 个答案:

答案 0 :(得分:0)

请将此行mydeal._getDealObject=[_arrayForGetDeal objectAtIndex:indexPath.row];置于评论中,然后检查您是否面临同样的问题。如果YES则XIB出现问题(绑定问题,XIB名称问题)。请再次检查所有绑定的UIControl。

答案 1 :(得分:0)

问题不在于您的推送导航控制器,而是由于导致的内存问题  mydeal._getDealObject。如果您放置断点并在mydeal._getDealObject=[_arrayForGetDeal objectAtIndex:indexPath.row];行上逐行检查,您将看到该对象没有任何内存,则该对象无法获取内存。检查并了解您遇到此问题的原因。一旦将任何内存提供给 mydeal 对象,您的崩溃就会停止。

答案 2 :(得分:0)

问题不在于推送导航控制器,而在于实际上是内存问题

请制作@property(非原子,保留)NSArray * _getDealObject其他类,否则你可以在你的xcode中启用NSZombies