要自定义导航栏,我执行了几个步骤:
UINavigationBar
类的子类,进行一些自定义,如绘制阴影或为导航栏设置背景图像。一切正常,但当我想在导航栏上添加另一个自定义后退按钮时,我尝试将UIBarButtonItem
附加到navigationItem.backbarbuttonitem
,我不知道如何获取navigationItem
1}}来自UINavigationBar
子类。
代码示例:
// header file
@interface MyNavigationBar : UINavigationBar
@end
// implementation file
@implementation MyNavigationBar
-(void)drawRect:(CGRect)rect
{
// background image
UIImage* background_image = [UIImage imageNamed:@"my-navigation-bar.png"];
[self setBackgroundImage:background_image forBarMetrics:UIBarMetricsDefault];
// draw shadow
self.layer.masksToBounds = NO;
self.layer.shadowOpacity = 0.6;
self.layer.shadowOffset = CGSizeMake(0, 3);
}
@end
有没有办法在我的自定义navigationItem
子类中获取UINavigationBar
条目,或者我只是以错误的方式做到了? :P
谢谢:)
答案 0 :(得分:0)
你可以隐藏uinavigationbar。然后放一个可以有uinavigationbar高度和宽度的uiview。然后添加按钮可以适合或您想要的数量。将uiimage添加到视图中。你会有一个很好的定制uinavigation酒吧。你可以使用popviewcontroller或poptorootviewcontroller来模仿后退按钮。