2011-04-27 49 views
4

我可以按照http://blog.blackwhale.at/2009/06/uibuttons-in-uinavigationbar/在UINavigationBar的右侧添加多个按钮。但是,我找不到任何解决方案在左侧添加多个按钮。我想在我的iPad应用的UINavigation Bar的后退按钮旁边添加一个“编辑”按钮。它有点像iPad YouTube应用中的“退出”和“编辑”按钮。如何使用BACK按钮在UINavigationBar的左侧添加多个UIBarButtonItem

任何人有任何想法如何实现它?

感谢

+0

你可以添加一个segmentedcontrol,将有两个选择,并添加段控制到您的左栏导航项目。 – Gypsa 2011-04-27 10:25:40

+0

另一种选择是你可以隐藏你的导航栏,并把工具栏和工具栏上将不会有添加多个按钮的问题 – Gypsa 2011-04-27 10:27:25

+0

SegmentedControl在我的应用程序不起作用。我想要按钮效果,因为我想要左侧的“后退”和“编辑”按钮和右侧的“添加”按钮。隐藏导航栏可能会起作用,因为在“pushNavigationController”动画期间,我还没有想出一种方法来平滑地从导航栏转换到工具栏。此外,我无法创建与黑色条形式一起使用的按钮。 – Kelvin 2011-04-29 21:04:12

回答

0

你可以尝试一个UIView添加到左侧并在编程方式添加按钮,但是似乎没有成为一个更好的办法。这可能是你列出的教程的工作原理,但我没有检查。如果您需要我可以提供的代码示例。

0

这将解决您的问题,

UIView *leftView = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 320, 30)]; 

UIButton *myButton2 = [UIButton buttonWithType:UIButtonTypeCustom]; 
[myButton2 setImage:[UIImage imageNamed:@"Main_Menu_SearchIcon.png"] forState:UIControlStateNormal]; 
myButton2.frame = CGRectMake(0.0, 0.0, 70,30); 
[myButton2 addTarget:self action:@selector(openSetting:) forControlEvents:UIControlEventTouchUpInside]; 
myButton.showsTouchWhenHighlighted = myButton2.showsTouchWhenHighlighted = YES; 

UIButton *myButton3 = [UIButton buttonWithType:UIButtonTypeCustom]; 
[myButton3 setImage:[UIImage imageNamed:@"Main_Menu_SearchIcon.png"] forState:UIControlStateNormal]; 
myButton3.frame = CGRectMake(50.0, 0.0, 70,30); 
[myButton3 addTarget:self action:@selector(openSetting:) forControlEvents:UIControlEventTouchUpInside]; 
myButton.showsTouchWhenHighlighted = myButton3.showsTouchWhenHighlighted = YES; 


[leftView addSubview:myButton2]; 
[leftView addSubview:myButton3]; 
UINavigationItem *item = [[UINavigationItem alloc] initWithTitle:self.tabBarItem.title]; 
    UINavigationBar *naviBarObj = [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, 320, 60)]; 
    naviBarObj.barTintColor = [UIColor lightGrayColor]; 
    naviBarObj.items = [NSArray arrayWithObjects:item, nil]; 
    naviBarObj.topItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:leftView]; 
0
let editImage = UIImage(named: "YourImageName1")! 

let searchImage = UIImage(named: "YourImageName2")! 

let editButton = UIBarButtonItem(image: YourImageName1, style: 
.Plain, target: self, action: "didTapEditButton:") 

let searchButton = UIBarButtonItem(image: YourImageName2, style: 
.Plain, target: self, action: "didTapSearchButton:") 

navigationItem.leftBarButtonItems = [YourImageName1, YourImageName2] 

,并最终使功能窃听按钮

func didTapEditButton(sender: AnyObject) 

{ 

... 
} 

func didTapSearchButton(sender: AnyObject) 

{ 

... 
} 
相关问题