Draw custom Back button on iPhone Navigation Bar

2019-01-18 05:20发布

I've got a UIView with a NavigationBar and I'd like to add a button which looks like the style of a Back Button. I'm not using a UINavigationController and was wondering if this could be done without it?

The style of the button should look like this: alt text

Thanks

2条回答
爷的心禁止访问
2楼-- · 2019-01-18 05:49

You need to set up a custom stack of UINavigationItem objects and push them on to the UINavigationBar. This is the only way I know of to get a true back button. I haven't tested this code, but you should do something like this:

UINavigationItem *previousItem =
    [[[UINavigationItem alloc] initWithTitle:@"Back title"] autorelease];

UINavigationItem *currentItem =
    [[[UINavigationItem alloc] initWithTitle:@"Main Title"] autorelease];

[navigationBar setItems:[NSArray arrayWithObjects:previousItem, currentItem, nil]
               animated:YES];

To handle when the buttons are pressed you should set yourself as the navigation bar's delegate and implement the UINavigationBarDelegate delegates.

查看更多
倾城 Initia
3楼-- · 2019-01-18 06:00

You can also update this by modifying the backBarButtonItem on the previous view controller (not the currently viewed one).

查看更多
登录 后发表回答