【发布时间】:2016-10-27 12:44:46
【问题描述】:
我想要这样的导航栏。
我可以通过以下代码设置左按钮:
-(void) setNavigationButtons:(NSString *)title{
UIImage *logoImage = [UIImage imageNamed:@"back-icon"];
UIButton *logoBackButton = [UIButton buttonWithType:UIButtonTypeCustom];
[logoBackButton setImage:logoImage forState:UIControlStateNormal];
logoBackButton.frame = CGRectMake(0.0, 0.0, 50, 50);
UIBarButtonItem *backBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:logoBackButton];
[logoBackButton addTarget:self action:@selector(backAction:) forControlEvents:UIControlEventTouchDown];
[self.navigationController.navigationBar setTitleTextAttributes:
@{NSForegroundColorAttributeName:[Constants Instance].whiteColor}];
self.navigationController.navigationBar.barTintColor = [Constants Instance].navigationTitleColor;
[self setNavigationTitle:title];
self.navigationItem.leftBarButtonItem = backBarButtonItem;
}
-(void)setNavigationTitle:(NSString *)title{
self.navigationItem.title = title;
[self.navigationController.navigationBar setTitleTextAttributes:
@{NSForegroundColorAttributeName:[UIColor whiteColor],
NSFontAttributeName:[UIFont fontWithName:@"Nexa Light" size:20]}];
}
- (IBAction)backAction:(id)sender {
[self.navigationController popViewControllerAnimated:YES];
}
但它不附加到左侧并且有边距。我希望它像上面的屏幕截图一样固定在左侧。我不想在该按钮上显示任何文本,例如返回等。
右键发生类似情况。
如果我在代码末尾添加这一行,我会遇到更多问题。
self.navigationItem.rightBarButtonItem = backBarButtonItem;
为了显示右键,它只显示右键而不显示左键。意味着我不能同时设置两个按钮。
【问题讨论】:
-
请添加实际结果的截图,以便更好地理解问题。
-
请张贴你所取得的成果,以便其他人可以调整它。
-
好的,我已经删除了该代码以供其他尝试,请给我 2 分钟,我会上传有问题的。
-
我添加了截图
标签: ios objective-c uinavigationbar