需求: 控制导航栏左右按钮在不同状态下显示与隐藏
一.声明rightBtn
@property(nonatomic,strong)UIButton *rightBtn;//右导航按钮
二.初始化rightBtn 设置为导航栏rightBarButtonItem
#pragma makr - 初始化导航栏右按钮
-(void)makeNav
{
_rightBtn = [UIButton buttonWithType:UIButtonTypeCustom];
_rightBtn.frame = CGRectMake(0, 0, 40, 30);
[_rightBtn setTitle:@"点我" forState:UIControlStateNormal];
[_rightBtn addTarget:self action:@selector(rightButtonClick) forControlEvents:UIControlEventTouchUpInside];
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:_rightBtn];
}
#pragma makr - 导航栏右按钮点击事件
-(void)rightButtonClick
{
NSLog(@"导航栏右按钮");
}
三.控制rightBtn显示与隐藏 本文用的是segment点击事件
#pragma mark - segment点击事件
-(void)segmentClick:(UISegmentedControl*)segment
{
switch (segment.selectedSegmentIndex)
{
case 0:
{
_rightBtn.hidden = NO;
}
break;
case 1:
{
_rightBtn.hidden = YES;
}
break;
default:
break;
}
}
左按钮同理
网友评论