gpt4 book ai didi

iphone - UINavigationController 子类 navigationItem 忽略 -setLeftBarButtonItem

转载 作者:行者123 更新时间:2023-12-03 20:27:32 25 4
gpt4 key购买 nike

我目前有一个 UINavigationController 的子类,它具有以下 viewDidLoad 函数。

- (void)viewDidLoad
{
[super viewDidLoad];

UIBarButtonItem *leftButton = [[UIBarButtonItem alloc] initWithTitle:@"HI"
style:UIBarButtonItemStylePlain
target:self
action:@selector(manage)];
[self.navigationItem setLeftBarButtonItem:leftButton];

[self.navigationBar setBackgroundImage:[[UIImage imageNamed:@"top_nav_bg.png"] stretchableImageWithLeftCapWidth:3.0 topCapHeight:0.0] forBarMetrics:UIBarMetricsDefault];

}

该 UINavigationController 子类是具有以下 viewDidLoad 的 UITabBarBarController 子类中的选项卡之一。

- (void)viewDidLoad
{
[super viewDidLoad];

// Change some of the look of the main tab bar
[self.tabBar setBackgroundImage:[[UIImage imageNamed:@"tab_nav_bg.png"] stretchableImageWithLeftCapWidth:2.0 topCapHeight:0.0]];
[self.tabBar setSelectionIndicatorImage:[[UIImage imageNamed:@"tab_nav_bg_active.png"] stretchableImageWithLeftCapWidth:2.0 topCapHeight:0.0]];

// Load the various view controllers for this view
SBHomeViewController *homeViewController = [[SBHomeViewController alloc] init];
[homeViewController.tabBarItem setFinishedSelectedImage:[UIImage imageNamed:@"tab_home_active.png"] withFinishedUnselectedImage:[UIImage imageNamed:@"tab_home.png"]];
[homeViewController.tabBarItem setImageInsets:UIEdgeInsetsMake(5.0, 0.0, -5.0, 0.0)];

// The navigation controller that will hold the home view
SBMainNavigationViewController *homeNavController = [[SBMainNavigationViewController alloc] initWithRootViewController:homeViewController];

self.viewControllers = @[homeNavController];
}

一切似乎都运行良好。正在加载来自 UINavigationController viewDidLoad 的正确导航栏背景图像。但是,根本没有设置 leftBarButtontem。无论如何,我尝试将其设为 rightBarButtonItem,但这也不起作用。

想法?

最佳答案

导航 Controller 是其他 View 的容器和导航栏的宿主。但是,它从来不是导航堆栈的一部分。只有属于堆栈一部分的 View Controller 才会对栏按钮项产生影响。

不要将栏按钮项目设置到导航 Controller 导航项目上,而是将其设置到 Root View Controller 导航项目上。

关于iphone - UINavigationController 子类 navigationItem 忽略 -setLeftBarButtonItem,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16157373/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com