gpt4 book ai didi

ios - 无法更改 UIBarButtonItem 的背景

转载 作者:行者123 更新时间:2023-11-29 03:24:42 26 4
gpt4 key购买 nike

我需要在一个 ViewController 中更改 UIBarButtonItem 的默认(已在我的 AppDelegate 中声明)背景。

所以,在我的 AppDelegate 中我有:

UIImage *navBarItemBackground = [UIImage imageNamed:@"navbar_button_green"];
[[UIBarButtonItem appearance] setBackgroundImage:navBarItemBackground
forState:UIControlStateNormal
style:UIBarButtonItemStyleBordered
barMetrics:UIBarMetricsDefault];

当我需要恢复按钮的默认背景时 - 我在我的 viewController 中实现:

self.navigationItem.rightBarButtonItem = nil;
UIBarButtonItem *rightBarItem = [[UIBarButtonItem alloc] initWithTitle:@"Сохранить" style:UIBarButtonItemStyleBordered target:self action:@selector(clickOnSend:)];
[rightBarItem setBackgroundImage:[UIImage imageNamed:@""] forState:UIControlStateNormal style:UIBarButtonItemStyleBordered barMetrics:UIBarMetricsDefault];
self.navigationItem.rightBarButtonItem = rightBarItem;

但我认为将空文件设置为图像是不正确的。有没有更简单的方法来实现这种行为?谢谢!

最佳答案

如果你只想改变一个或几个UIViewController的 UIBarButtonItems backgroundImage,你最好在特定的UIViewController中改变,如后者你使用的情况。而 [[UIBarButtonItem appearance] setBackgroundImage:forState:style:barMetrics:]; 将更改所有 UIBarButtonItems 背景图像,这可能不是更好的。

关于ios - 无法更改 UIBarButtonItem 的背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20606082/

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