UIBarButtonItem 的子类,可以将自定义按钮或 indicatorView 用一行代码插入到您的 navigationBar 中。
默认颜色
- (void)viewDidLoad
{
[super viewDidLoad];
[self.navigationItem setLeftBarButtonItem:[ATNavBarButton setBarButton:ATNavBarButtonUser withDelegate:self]];
[self.navigationItem setRightBarButtonItem:[ATNavBarButton setBarButton:ATNavBarButtonSettings withDelegate:self]];
}
自定义颜色
- (void)viewDidLoad
{
[super viewDidLoad];
[self.navigationItem setLeftBarButtonItem:[ATNavBarButton setBarButton:ATNavBarButtonMenu withColor:UIColorFromRGB(0x5a4d8c) withDelegate:self]];
[self.navigationItem setRightBarButtonItem:[ATNavBarButton setBarButton:ATNavBarButtonRefresh withColor:[UIColor redColor] withDelegate:self]];
}
指示器视图
- (void)viewDidLoad
{
[super viewDidLoad];
[self.navigationItem setLeftBarButtonItem:[ATNavBarButton setBarButton:ATNavBarButtonArrowLeft withColor:UIColorFromRGB(0x5a4d8c) withDelegate:self]];
[self loadIndicatorView:YES];
}
- (void)loadIndicatorView:(BOOL)loading
{
if (loading) {
[self.navigationItem setRightBarButtonItem:[ATNavBarButton setIndicatorButtonWithColor:[UIColor orangeColor] withDelegate:self]];
} else {
[self.navigationItem setRightBarButtonItem:[ATNavBarButton setBarButton:ATNavBarButtonRefresh withColor:[UIColor redColor] withDelegate:self]];
// or [self.navigationItem setRightBarButtonItem:nil]; to remove the indicator or button if you don't have a manual refresh button
}
}
当前只有左右导航按钮,但你可以在任何时候设置任何按钮。这是处理它们的动作的地方
- (void)ATNavBarButton:(ATNavBarButton *)barButton didPressBarButton:(ATNavBarButtonPressed)buttonPressed
{
if (buttonPressed == ATNavBarButtonBack) {
[self.navigationController popViewControllerAnimated:YES];
} else if (buttonPressed == ATNavBarButtonArrowRight) {
NextViewController *nextController = [NextViewController new];
[self.navigationController pushViewController:nextController animated:YES];
} else if (buttonPressed == ATNavBarButtonRefresh) {
[self reloadContent];
} else if (buttonPressed == ATNavBarButtonDownload) {
[self downloadFile:@"https://www.emotality.com/development/GitHub/ATNavBarButton-1.png"];
}
}
手动
ATNavBarButton
文件夹复制到您的项目中#import "ATNavBarButton.h"
<ATNavBarButtonDelegate>
协议ATNavBarButton:didPressBarButton:
CocoaPods
pod 'ATNavBarButton'
添加到 podfile 中#import "ATNavBarButton.h"
<ATNavBarButtonDelegate>
协议ATNavBarButton:didPressBarButton:
ATAppUpdater 使用 MIT 许可证发布。有关详细信息,请参阅 LICENSE