您的位置:首页 > 移动开发 > IOS开发

ios导航栏又按钮添加图片后使其保持原色

2016-10-08 11:11 309 查看
//单一导航栏按钮设置如下

UIBarButtonItem *rightBarItem = [[UIBarButtonItem alloc] initWithTitle:nil style:UIBarButtonItemStylePlain target:self action:@selector(addItemmmClick)];

self.navigationItem.rightBarButtonItem = rightBarItem;

[self.navigationItem.rightBarButtonItem setImage:[[UIImage imageNamed:@"nav_add"] imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]];

//自定制导航栏按钮实现多个按钮

主要是先创建一个view,然后在上面创建多个按钮,根据需求进行设置按钮的数量,最后把按钮数组作为导航栏的按钮数组即可如下

//导航栏一侧有多个按钮的时候
//写成一个view上
UIView * viewBackInNavi=[[UIView alloc]initWithFrame:CGRectMake(0, 0, 60, 30)];
viewBackInNavi.backgroundColor=[UIColor clearColor];
viewBackInNavi.userInteractionEnabled=YES;
//重做按钮
UIButton *myRightRePaintBtn=[[UIButton alloc]initWithFrame:CGRectMake(0, 0, 30, 30)];
[myRightRePaintBtn addTarget:self action:@selector(clear:) forControlEvents:UIControlEventTouchUpInside];
[myRightRePaintBtn setBackgroundColor:[UIColor clearColor]];
[myRightRePaintBtn.titleLabel setFont:[UIFont systemFontOfSize:15]];
[myRightRePaintBtn setImage:[UIImage imageNamed:@"iconfont-zhongzuo"] forState:UIControlStateNormal];
[myRightRePaintBtn setTitle:[NSString stringWithFormat:@" %@",NSLocalizedString(@"local_paintAgain", nil)] forState:UIControlStateNormal];
myRightRePaintBtn.titleLabel.adjustsFontSizeToFitWidth=YES;
[viewBackInNavi addSubview:myRightRePaintBtn];

//提交按钮
UIButton *myRightSubmitBtn=[[UIButton alloc]initWithFrame:CGRectMake(30, 0, 30, 30)];
[myRightSubmitBtn addTarget:self action:@selector(submitBtnClicked) forControlEvents:UIControlEventTouchUpInside];
[myRightSubmitBtn setBackgroundColor:[UIColor clearColor]];
[myRightSubmitBtn.titleLabel setFont:[UIFont systemFontOfSize:15]];
[myRightSubmitBtn setImage:[UIImage imageNamed:@"iconfont-tijiao-copy"] forState:UIControlStateNormal];
[myRightSubmitBtn setTitle:[NSString stringWithFormat:@" %@",NSLocalizedString(@"local_card", nil)] forState:UIControlStateNormal];
myRightSubmitBtn.titleLabel.adjustsFontSizeToFitWidth=YES;
[viewBackInNavi addSubview:myRightSubmitBtn];

UIBarButtonItem * right=[[UIBarButtonItem alloc]initWithCustomView:viewBackInNavi];
//将整个viewBackInNavi右移10
UIBarButtonItem *negativeSpacer = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace target:nil action:nil];
negativeSpacer.width =-10;//负数为右移,正数为左移
self.navigationItem.rightBarButtonItems = [NSArray arrayWithObjects:negativeSpacer,right, nil nil];
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: