【问题标题】:Display title for view in back button but not in navigation bar在后退按钮中显示视图标题,但不在导航栏中
【发布时间】:2011-11-29 23:47:11
【问题描述】:

我想将视图的标题设置为“主菜单”,但是我不希望标题出现在导航工具栏中。我想设置标题的原因是后退按钮的标题为“主菜单”。有没有办法做到这一点?以下是相关代码:

 - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    if (self) {

        self.title = @"Main Menu";
        // Custom initialization

    }

    return self;
}

【问题讨论】:

    标签: objective-c cocoa-touch uiviewcontroller ios5 uinavigationbar


    【解决方案1】:

    要设置返回按钮项的标题,你应该在viewDidLoad方法中编写如下:

    - (void)viewDidLoad {
        [super viewDidLoad];
    
        UIBarButtonItem *backButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Main Menu"
     style:UIBarButtonItemStyleBordered target:nil action:nil];
        self.navigationItem.backBarButtonItem = backButtonItem;
        [backButtonItem release];
    }
    

    【讨论】:

    • 非常感谢你,这就是我要找的。​​span>
    【解决方案2】:

    我会为此设置返回按钮。您需要在Main Menu 控制器中设置后退按钮的值,然后它才会推送下一个UIViewController

    关于为什么查看我以前的 answerView controller programming guide 的文档的解释

    【讨论】:

      【解决方案3】:

      在推送下一个视图控制器之前设置标题:

      [[self navigationItem] setTitle:@"Main Menu"];
      [navigationController pushViewController:nextVC animated:YES];
      

      并将其设置为viewWillAppear 中的空白字符串(或nil):

      [[self navigationItem] setTitle:@""];
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-12-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多