Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 返回按钮上的调用方法_Ios_Cocoa Touch - Fatal编程技术网

Ios 返回按钮上的调用方法

Ios 返回按钮上的调用方法,ios,cocoa-touch,Ios,Cocoa Touch,我有一个导航控制器,它在第一个视图上有一个隐藏的导航栏,然后为所有子视图显示。问题是,如果你回到第一个视图,我似乎无法再次隐藏它 我在第一个视图的init中创建了一个后退按钮(因此可以重命名它): self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Logout" style:nil target:self action:@selector(hideNavigationBar

我有一个导航控制器,它在第一个视图上有一个隐藏的导航栏,然后为所有子视图显示。问题是,如果你回到第一个视图,我似乎无法再次隐藏它

我在第一个视图的init中创建了一个后退按钮(因此可以重命名它):

self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc] 
  initWithTitle:@"Logout" style:nil target:self 
  action:@selector(hideNavigationBar:)];

但该方法从未被调用。为什么?

在您的第一个控制器中,在
-(void)视图中将出现
,例如:

  [self.navigationController setNavigationBarHidden:YES animated:NO];

如果您将按钮标题设置为“注销”,则您弹出的控制器的导航栏可能会被隐藏。所以你按下“注销”,栏被隐藏,控制器被弹出,你现在看到上一个控制器,应该没有栏,但是栏存在,不是吗?按钮被正确重命名,只是方法从未被调用。我从来没见过原木。我也这么做,这比编辑后退按钮方法要干净得多。当然,@Devin Gund,你可以在任何不需要导航栏的控制器中进行操作,不是吗?这就是我最后所做的,只是好奇为什么我无法从后退按钮获得消息。