gpt4 book ai didi

ios 5 将导航 Controller 中后退按钮的背景更改为透明

转载 作者:可可西里 更新时间:2023-11-01 03:55:20 24 4
gpt4 key购买 nike

我已经用背景图像自定义了导航 Controller 标题栏,但我真的很难将后退按钮的背景颜色更改为透明,以便与它下面的绿色标题栏相匹配。我是 iOS 开发的新手。谁能建议可以做什么?

这是我用来更改导航 Controller 标题栏的代码,以防万一:

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
if ([self.navigationController.navigationBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)] ) {
UIImage *image = [UIImage imageNamed:@"greenbar.png"];
[self.navigationController.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
// [[UIBarButtonItem appearance] setBackButtonBackgroundImage:image forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];

}

//change back button image

}

编辑:在做了一些研究之后,我设法得到了我想要的东西。下面是更改后退按钮背景图像的代码:

 UIImage *image1 = [UIImage imageNamed:@"back-bt.png"];
[[UIBarButtonItem appearance] setBackButtonBackgroundImage:image1 forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];

上面的代码将图像添加到导航 Controller 中的所有后退按钮。

最佳答案

您无法更改默认后退按钮的外观,但您可以创建自己的按钮来替换它。

- (void)viewDidLoad {

[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
if ([self.navigationController.navigationBar respondsToSelector:@selector(setBackgroundImage:forBarMetrics:)] ) {
UIImage *image = [UIImage imageNamed:@"greenbar.png"];
[self.navigationController.navigationBar setBackgroundImage:image forBarMetrics:UIBarMetricsDefault];
// [[UIBarButtonItem appearance] setBackButtonBackgroundImage:image forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];

}

//change back button image
if(self.navigationController.viewControllers.count > 1) {
UIButton *backButton = [UIButton buttonWithType:UIButtonTypeCustom];

[backButton setTitle:@"Back" forState:UIControlStateNormal];
[backButton addTarget:self action:@selector(didTapBackButton:) forControlEvents:UIControlEventTouchUpInside];
backButton.frame = CGRectMake(0.0f, 0.0f, 64.0f, 41.0f);
UIBarButtonItem *backButtonItem = [[UIBarButtonItem alloc] initWithCustomView:backButton];

self.navigationItem.leftBarButtonItem = backButtonItem;
}
}



- (void) didTapBackButton:(id)sender {
if(self.navigationController.viewControllers.count > 1) {
[self.navigationController popViewControllerAnimated:YES];
}
}

关于ios 5 将导航 Controller 中后退按钮的背景更改为透明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10496666/

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