我正在寻找一种以编程方式创建UIBarButtonItem
的方法,该UINavigationBar
看起来像UINavigationController
的后退按钮。
显然,只有在按下{{1}}后才会显示后退按钮。
所以我只能插入一个“取消”样式的按钮。但我的目标是创建一个具有“New Item”风格的按钮。
想法?
答案 0 :(得分:3)
简短的回答是你不能这样做。
您可以保存图像,然后将图像放到该位置,但后退按钮由UINavigationBar
的私有部分管理。
答案 1 :(得分:1)
我认为你需要使用图像。然后将图像设置为按钮backgroundImage。如:
navigationBar = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, 320, 44)];
UINavigationItem *navigationItem = [[[UINavigationItem alloc] initWithTitle:@"Detail"] autorelease];
UIButton *button = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 70, 30)];
[button setImage:[UIImage imageNamed:@"plain.png"] forState:UIControlStateNormal];
[button addTarget:self action:@selector(buttonClicked:)
forControlEvents:UIControlEventTouchUpInside];
UIBarButtonItem *buttonItem = [[UIBarButtonItem alloc]
initWithCustomView:button];
navigationItem.leftBarButtonItem = buttonItem;
[buttonItem release];
[button release];
[navigationBar pushNavigationItem:navigationItem animated:NO];
[self.view addSubview:navigationBar];
答案 2 :(得分:0)
看看这个答案:Creating a left-arrow button (like UINavigationBar's "back" style) on a UIToolbar
它为您提供了一个psd文件,其中包含您需要的图像。
答案 3 :(得分:0)
对我有用:
[self.navigationItem.leftBarButtonItem setTitle:@"Back"];
(带后退箭头的自定义文字)