我有一个典型的UINavigationController方案,但我有很多视图,这意味着你最终可能会有相当多的视图叠加在一起。我想提供一个主页按钮,最初我打算将它放在导航栏的右侧;但是,我有一个搜索栏和另一个按钮,所以我希望把它放在后面的按钮旁边。
在ascii艺术中:
< Back | |Home| Title |Browse| [Search Bar]
现在我尝试使用以下命令设置前一个视图控制器的backButtonItem:
UIToolbar* toolbar = [[UIToolbar alloc]
initWithFrame:CGRectMake(0, 0, 100, 45)];
[toolbar setBarStyle: UIBarStyleBlackOpaque];
// create an array for the buttons
NSMutableArray* buttons = [[NSMutableArray alloc] initWithCapacity:3];
UIBarButtonItem *back = [[UIBarButtonItem alloc] init];
back.title = @"Back";
// create a standard save button
[buttons addObject:back];
[back release];
// create a spacer between the buttons
UIBarButtonItem *spacer = [[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace
target:nil
action:nil];
[buttons addObject:spacer];
[spacer release];
UIBarButtonItem *homeButton = [[UIBarButtonItem alloc]
initWithImage:[UIImage imageNamed:@"home32.png"]
style:UIBarButtonItemStylePlain
target:self
action:@selector(onHomeButton:)];
homeButton.style = UIBarButtonItemStyleBordered;
[buttons addObject:homeButton];
[homeButton release];
// put the buttons in the toolbar and release them
[toolbar setItems:buttons animated:NO];
[buttons release];
// place the toolbar into the navigation bar
self.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc]
initWithCustomView:toolbar];
[toolbar release];
但似乎没有取代标准后退按钮。如果我只是尝试一个UIBarButtonItem并设置backButton,那就可以了。
现在我尝试的另一种方法是在推入堆栈的View上设置leftBarButtonItem,但我似乎无法找到一种方法来创建一个左侧尖尖形状的后退按钮。 / p>
有什么建议吗?
答案 0 :(得分:0)
self.navigationItem.leftBarButtonItem=[[UIBarButtonItem alloc]
initWithCustomView:toolbar];
祝你好运