这是我的代码....?如何将导航栏与UIBarbuttonitem集成?
UINavigationBar *nav= [[UINavigationBar alloc] initWithFrame:CGRectMake(0, 0, 320, 60)];
nav.backgroundColor = [UIColor whitecolor];
//nav.tintColor = [UIColor darkGrayColor];
[self.view addSubview:nav];
[nav release];
答案 0 :(得分:0)
尝试初始化您的项目,然后
nav.leftBarButtonItem = barButtonItem;
或
nav.rightBarButtonItem = barButtonItem;
导航栏上只能有两个项目
答案 1 :(得分:0)
请注意,UIBarButtonItem按钮是 UINavigationItem 的属性,而不是 UINavigationBar 。
例如,当使用UINavigationController时,它会自动提供自己的UINavigationBar。但是导航控制器管理的每个视图都可以定义一个UINavigationItem,它控制标题,左右按钮等。
答案 2 :(得分:0)
更新:iOS 5支持同一侧的多个按钮。来自 UINavigationItem 文档:
自定义视图
titleView property
leftBarButtonItems property
leftBarButtonItem property
rightBarButtonItems property
rightBarButtonItem property
– setLeftBarButtonItems:animated:
– setLeftBarButtonItem:animated:
– setRightBarButtonItems:animated:
– setRightBarButtonItem:animated:
所以,基本上,你会写这样的东西在左边添加两个按钮:
UIBarButtonItem *refreshBtn = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh target:self action:@selector(refreshPlans:)];
UIBarButtonItem *selectYearBtn = [[UIBarButtonItem alloc] initWithTitle:@"Select Year" style:UIBarButtonSystemItemAction target:self action:@selector(selectYear)];
self.navigationItem.leftBarButtonItems = [[NSArray alloc] initWithObjects: refreshBtn, selectYearBtn, nil];
不幸的是,我还没有在Storyboard中看到过这样做的方法。希望这会有所帮助。