首页 > 解决方案 > 以编程方式使用“首选大标题”折叠和展开 UINavigationBar

问题描述

我正在使用“UITabBarController”和 UIViewController(嵌入在“UINavigationController”中)创建一个新的干净 Xcode 项目。

“UINavigationController”已将“首选大标题”启用为“始终”。

我在 NavigationBar 的“UIViewController”中添加了两个 IBAction 用于折叠/展开,但下面的代码不起作用。在我阅读研究之后,我必须设置prefersLargeTitlesTRUEor FALSE,但是当 IBAction 调用时没有任何反应。

在此处输入图像描述

这是我的代码:

#import "FirstViewController.h"

@interface FirstViewController ()

@end

@implementation FirstViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    self.navigationController.navigationBar.prefersLargeTitles = TRUE;
}

-(IBAction)collapse:(id)sender  {
    self.navigationController.navigationBar.prefersLargeTitles = FALSE;
    self.navigationController.navigationItem.largeTitleDisplayMode = UINavigationItemLargeTitleDisplayModeNever;
}

-(IBAction)expand:(id)sender  {
    self.navigationController.navigationBar.prefersLargeTitles = TRUE;
    self.navigationController.navigationItem.largeTitleDisplayMode = UINavigationItemLargeTitleDisplayModeAlways;
}

@end

我如何以编程方式折叠和展开 UINavigationbar?

标签: iosobjective-cxcodeuinavigationcontrolleruinavigationbar

解决方案


推荐阅读