为什么第二次按下视图时不显示后退按钮?

问题描述:

我每次点击图片我把这种方法(推在细节示图视图):为什么第二次按下视图时不显示后退按钮?

-(IBAction) loadTeamView:(id)sender { 
teamView = [[TeamViewController alloc] initWithNibName:@"TeamViewController" bundle:nil detailItem:self.detailItem]; 
[self.navigationController pushViewController:teamView animated:YES]; 
} 

它的工作原理,但如果您单击后退按钮(它会自动出现),然后回来此方法没有后退按钮显示。有任何想法吗?

+0

考虑不存储你推的视图控制器。没有必要存储它,它只会导致这样的麻烦。 – 2011-12-31 20:40:14

+0

谢谢你的回应,但不幸的是后退按钮仍然消失。 – Jackelope11 2011-12-31 20:44:18

+1

你也在泄漏团队视图。把autorelease放在行尾,除非有很好的理由保留这个东西。 – CodaFi 2011-12-31 21:14:14

确保您没有更改视图控制器的navigationItem属性的内容。按照文档,导航控制器遵循用于左侧导航栏按钮下列规则:

导航栏的左侧的栏按钮项允许 导航回先前视图控制器在导航 堆栈上。导航控制器更新 导航栏的左侧如下:

  1. 如果新的顶层视图控制器具有一个自定义左栏按钮 项目时,显示该项目。要指定自定义左栏按钮 项目,请设置视图控制器的 导航项目的leftBarButtonItem属性。
  2. 如果顶层视图控制器没有一个 自左栏按钮项目,但以前的 视图控制器的导航项目在其backBarButtonItem财产有效的项目, 导航栏上显示该项目。
  3. 如果未通过任一视图控制器的指定的自定义栏按钮项 ,一个默认的后退按钮 被使用并且其标题被设置为 前视图控制器,也就是说,所述的标题属性的值视图控制器在堆栈上向下一级 。 (如果只有一个导航 堆栈视图控制器,显示没有后退按钮。)

http://developer.apple.com/library/ios/#documentation/uikit/reference/UINavigationController_Class/Reference/Reference.html

+0

谢谢你,你的答案是非常有用的和信息丰富的,但我的看法仍然不会工作... – Jackelope11 2012-01-03 19:25:21

+0

你需要发布一些更多的代码,没有错你已发布的代码和所有常见的情况下已被覆盖。 – MGA 2012-01-03 19:41:01