我有一个UIViewController,带有navigationController,并隐藏后退按钮。该视图控制器推其他的UIViewController,并在这个新的viewController的viewDidLoad中,我做的:后退按钮不会出现在导航控制器
self.navigationItem.hidesBackButton = FALSE;
但后退按钮不happear。为什么?当我传递给iOS 4.2的新Xcode版本时,这是行不通的,因为在最新版本中,它一切正常。
我有一个UIViewController,带有navigationController,并隐藏后退按钮。该视图控制器推其他的UIViewController,并在这个新的viewController的viewDidLoad中,我做的:后退按钮不会出现在导航控制器
self.navigationItem.hidesBackButton = FALSE;
但后退按钮不happear。为什么?当我传递给iOS 4.2的新Xcode版本时,这是行不通的,因为在最新版本中,它一切正常。
是否有前导航控制器(在导航栏上)的标题?有时,如果没有标题,则第一个后退按钮会自动隐藏。
这是“正确”的答案 - iOS 3.x是“buggy”/与后来的iOS版本不一致。在iOS 3.x中,后退按钮是不可见的,但如果您尝试点击它应该在的位置,它实际上会将您带回。这种说,这是一个真正的界面小故障/错误在iOS 3.x ... – Jonny 2011-11-16 05:23:02
我倾向于同意Syoleen,应该有一个标题文本设置为导航控制器,您可以将标题设置为@“”(即那里有一个空间),如果你不希望它显示但仍然活跃。
我发现这个伎俩错误的硬性方式。但我不会建议使用它,因为用户失去了iPhone界面的直观性。 – 2010-11-26 00:59:25
如果您使用界面生成器,检查连接到导航控制器..为了清楚起见,在IB视图控制器内的导航项目对象:
导航控制器||东西视图控制器||导航项目
在检查器的属性选项卡上,应该有一个名为“后退按钮”的文本字段。确保它有诸如“返回”之类的内容。
在列出第一个ViewController后,它将通过堆栈传播。
您也可以编程设置后退按钮标题。 – 2010-11-30 17:19:58
那么,我有同样的问题运行iOS 4.2。后退按钮将拒绝出现。在自动绘制到风景后,它就会出现。我的解决办法是做到以下几点 - 这解决了问题...或者我们应该说,它的一个解决办法;)
- (void)viewDidLoad
{
[super viewDidLoad];
checkHolder.image = anImage;
self.navigationItem.hidesBackButton = YES;
}
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
self.navigationItem.hidesBackButton = NO;
}
我在iOS 4.2中遇到同样的问题,你的破解修正了它。 iOS 4.3到5.0并不需要这个破解。我还没有在iOS上测试少于4.2,所以我不能告诉这个问题是否独占4.2。 – JoJo 2011-10-29 00:53:47
您可以发布)的代码使用推视图控制器和b)`viewDidLoad中: `在你的新视图控制器中。 – Fred 2010-11-25 22:48:57