UINavigationController 后退和关闭按钮

Posted

技术标签:

【中文标题】UINavigationController 后退和关闭按钮【英文标题】:UINavigationController back and close button 【发布时间】:2012-05-26 16:39:49 【问题描述】:

我有一个导航控制器。控制器运行良好,并向我显示返回按钮以返回窗口。但是当我添加此代码以添加关闭按钮时:

- (void)viewDidLoad 

  [super viewDidLoad];

  UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithTitle:@"Chiudi" 
                                  style:UIBarButtonItemStylePlain target:self
                       action:@selector(dismissModalViewControllerAnimated:)];          
  
  self.navigationItem.rightBarButtonItem = doneButton;
  
  [doneButton release];


...然后后退按钮消失,我只能看到关闭按钮。为什么?

【问题讨论】:

你的意思是你推了一个导航控制器? 添加一些代码是什么意思?您是否将“关闭”按钮重叠在“返回”按钮之上? 你好,我以前也有同样的问题,后来我把这个新按钮的创建移到了viewDidAppear:,请尝试告诉我 是的,按下后退按钮消失 OK 解决了问题是dismissModalViewControllerAnimated 我必须使用[self.navigationControllerdismissModalViewControllerAnimated:YES]; [self.navigationController popToRootViewControllerAnimated:NO]; 【参考方案1】:

问题出在

 dismissModalViewControllerAnimated 

我必须使用

 [self.navigationController dismissModalViewControllerAnimated:YES];     
 [self.navigationController popToRootViewControllerAnimated:NO];

【讨论】:

以上是关于UINavigationController 后退和关闭按钮的主要内容,如果未能解决你的问题,请参考以下文章

捕捉 UINavigationController 本机后退按钮操作

如何在 uinavigationcontroller 中隐藏后退按钮

UINavigationController后退按钮动作问题

无法在 UINavigationController 上设置后退按钮

UINavigationController 不显示后退按钮

UINavigationController 上的后退按钮