我为导航栏尝试此代码
UINavigationBar *navbar = [[UINavigationBar alloc]initWithFrame:CGRectMake(0, 0,320, 70)];
并且按钮我尝试了这段代码
UIBarButtonItem *add=[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(SaveButtonClicked:)];
self.navigationItem.rightBarButtonItem=add;
在此代码之后我也声明了SaveButtonClicked方法。
当我尝试使用此代码时,此代码中没有错误并成功编译,但导航栏中未显示该按钮。
帮助我提供正确的代码和建议。
答案 0 :(得分:0)
1)您不需要创建UINavigationBar。您所在的导航控制器提供了该功能。
2)如果你确实认为你需要一个,这可能意味着你的视图根本不在导航控制器中。检查self.navigationItem
的值是多少。我想你会发现它是零。这意味着您需要重做您的界面,以便此视图实际上位于导航控制器中。 Interface Builder中“编辑器”下的“嵌入导航控制器”可能对此有所帮助。
答案 1 :(得分:0)
创建导航栏后
UINavigationBar *navbar = [[UINavigationBar alloc]initWithFrame:CGRectMake(0, 0,320, 70)];
然后你需要创建导航项目。并将导航项添加到导航栏
UINavigationItem *item = [[UINavigationItem alloc]init];
UIBarButtonItem *add=[[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(SaveButtonClicked:)];
item.rightBarButtonItem=add;
navbar.items = [NSArray arrayWithObjects:item, nil];
[self.view addSubview:navbar];
希望这有帮助!
答案 2 :(得分:0)
你可以使用这一行来实现:
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc]initWithTitle:@"Save" style:UIBarButtonItemStylePlain target:self action:@selector(saveButtonClicked:)];
之后添加此方法
-(void)saveButtonClicked:(UIBarButtonItem *)sender{
}