gpt4 book ai didi

iPhone自定义UINavigationBar按钮

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

我有一个有 4 个选项卡的应用程序。每个选项卡都是一个 UINavigationController。 4 个 UINavigationBar 选项卡应该看起来相同,具有自定义背景图像、自定义后退按钮和触发功能的自定义右键。

我只想在我的代码中进行一次这些自定义,而不是在每个 RootViewController 中进行一次。

通过将此代码插入到我的 appDelegate 中,我设法获得了自定义背景图像:

    @implementation UINavigationBar (CustomImage)
- (void)drawRect:(CGRect)rect {
UIImage *image = [UIImage imageNamed: @"MyNavigationBar.png"];
[image drawInRect:CGRectMake(0, 0, self.frame.size.width, self.frame.size.height)];
}
@end

但我没有设法自定义后退按钮和右侧按钮或指定右侧按钮的操作。

有没有办法在 appDelegate 中做到这一点,就像背景图像一样?
或者我应该在每个 RootViewController 中进行自定义?

最佳答案

viewWillAppear方法中写入以下代码

UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom];  
UIImage *butImage = [[UIImage imageNamed:@"back.png"] stretchableImageWithLeftCapWidth:10 topCapHeight:10];
[button setBackgroundImage:butImage forState:UIControlStateNormal];
[button addTarget:self action:@selector(gotoBack:) forControlEvents:UIControlEventTouchUpInside];
button.frame = CGRectMake(0, 0, 48, 30);
UIBarButtonItem *backButton = [[[UIBarButtonItem alloc] initWithCustomView:button] autorelease];
self.navigationItem.leftBarButtonItem = backButton;

并编写后退按钮的操作事件。

-(IBAction)gotoBack:(id)sender
{
[self.navigationController popViewControllerAnimated:YES];
}

关于iPhone自定义UINavigationBar按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4885538/

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