导航栏上没有后退按钮
Posted
技术标签:
【中文标题】导航栏上没有后退按钮【英文标题】:Back button not made on navigation bar 【发布时间】:2011-08-03 04:28:55 【问题描述】:我从一个基于导航的项目开始,并将进一步的视图推送到控制器上。问题是,如果我不给导航项命名,那么后退按钮就不会被绘制!只有我给导航栏一个标题,后退按钮才会出现。在 NO 标题的情况下,苹果似乎不能写“返回”或“返回”。我不想给导航项一个标题(我将在我的视图中使用一个标签)。那么我该如何解决呢?
- (void)viewDidLoad
[super viewDidLoad];
self.navigationItem.title = @"Home"; /// <- without setting the title, the back button won't show !
在视图didLoad方法中,如果我删除标题,后退按钮将不会显示
【问题讨论】:
我们可以看一些代码吗?请问好看吗?另外,请随意选择用户名并稍等片刻。 当然...我添加了一些代码。但不要认为会很有用。访问我的 repo (github.com/aakash272/pagingScroll) 并尝试一下。 【参考方案1】:只需自己创建后退按钮:
- (void)viewDidLoad
[super viewDidLoad];
UIBarButtonItem *back = [[UIBarButtonItem alloc] initWithTitle:@"Back"
style:UIBarButtonItemStylePlain
target:nil
action:nil];
[[self navigationItem] setBackBarButtonItem:back];
[back release];
(如果您更喜欢点符号,self.navigationItem.backBarButtonItem = back;
)
【讨论】:
我是 Objective-c 的新手,我看过很多次但我不明白为什么你在创建后立即调用 release on back 按钮?据我了解,release 将引用计数减少了 1.... 它确实减少了引用计数。这个方法创建了它(它将引用计数设置为 1)。因此,当该方法使用它时,它会释放它,净增加为零。否则,您正在创建内存泄漏。 …现在上面的行可能会对引用计数做一些事情,但它不知道。引用计数的其他作用与此方法无关。以上是关于导航栏上没有后退按钮的主要内容,如果未能解决你的问题,请参考以下文章