除去UIBarButtonItem后面的自带UI,自定UIBarButtonItem背景图片。
2013-11-22 14:15
211 查看
在使用 UIBarButtonItem 系统提供的几个函数的时发现添加背景图片后会有个小框,而且很难去掉,影响效果,而且UIBarButtonItem好像不能使用frame 的属性,所以可以下面方法定制自己的UIBarButtonItem.
思想:对于UIBarButtonItem的定制,则可以利用[UIBarButtonItem initWithCustomeView:]方法进行。而因为UIBarButtonItem没有frame属性,而UIButton有bounds,还可以设置Button的背景图片,所以用已经设置bounds位置大小和背景图片的UIButton来替代UIBarButtonItem。
//设置UIBarButtonItem 背景图片
UIImage *sureImage = [UIImage imageNamed:@"btn_sure@2x.png"];
//初始化一个UIButton
UIButton *sureButton = [UIButton buttonWithType:UIButtonTypeCustom];
//设置UIButton.bounds的位置大小
sureButton.bounds = CGRectMake( 0, 0,
sureImage.size.width, sureImage.size.height );
//设置UIButton的背景图片
[sureButton setImage:sureImage forState:UIControlStateNormal];
//设置UIButton的响应事件
[sureButton addTarget:self action:@selector(sureButton:) forControlEvents:UIControlEventTouchUpInside];
//通过initWithCustomView:方法把UIButton加导UIBarButtonItem中
UIBarButtonItem *sureButtonItem = [[UIBarButtonItem alloc] initWithCustomView:sureButton];
//这句就不用注释了哈。
self.navigationItem.rightBarButtonItem =
sureButtonItem;
贴的只是部分代码,每行都有注释,因为看得懂吧,不懂得可以留言。
思想:对于UIBarButtonItem的定制,则可以利用[UIBarButtonItem initWithCustomeView:]方法进行。而因为UIBarButtonItem没有frame属性,而UIButton有bounds,还可以设置Button的背景图片,所以用已经设置bounds位置大小和背景图片的UIButton来替代UIBarButtonItem。
//设置UIBarButtonItem 背景图片
UIImage *sureImage = [UIImage imageNamed:@"btn_sure@2x.png"];
//初始化一个UIButton
UIButton *sureButton = [UIButton buttonWithType:UIButtonTypeCustom];
//设置UIButton.bounds的位置大小
sureButton.bounds = CGRectMake( 0, 0,
sureImage.size.width, sureImage.size.height );
//设置UIButton的背景图片
[sureButton setImage:sureImage forState:UIControlStateNormal];
//设置UIButton的响应事件
[sureButton addTarget:self action:@selector(sureButton:) forControlEvents:UIControlEventTouchUpInside];
//通过initWithCustomView:方法把UIButton加导UIBarButtonItem中
UIBarButtonItem *sureButtonItem = [[UIBarButtonItem alloc] initWithCustomView:sureButton];
//这句就不用注释了哈。
self.navigationItem.rightBarButtonItem =
sureButtonItem;
贴的只是部分代码,每行都有注释,因为看得懂吧,不懂得可以留言。
相关文章推荐
- UIBarButtonSystemItem 名称&图片
- iOS基础-系统自带按钮样式- UIBarButtonSystemItem
- UIBarButtonSystemItem的样式图片
- navigationItem.rightBarButtonItem 设置背景图片,颜色更改解决办法
- 设置系统自带UIBarButtonItem
- iOS系统自带控件 UIBarButtonSystemItem 的样式解析
- 【2013-5-8】除去UIBarButtonItem…
- UIBarButtonItem 、UITabBarItem 改变字体,大小,图片
- UI: 使用 UIBarButtonItem 给导航栏添加按钮
- 自定义导航栏按钮UIBarButtonItem 文字或图片
- navigationItem.rightBarButtonItem 设置背景图片,颜色更改解决的方法
- 自定义导航栏按钮UIBarButtonItem 文字或图片
- ios 让navigationItem的UIBarButtonItem的背景色不为蓝色,现实图片本身颜色
- 自定义导航栏按钮UIBarButtonItem 文字或图片
- UIBarButtonItem 设置setRightBarButtonItem 背景
- iOS - UIBarbuttonitem图片是蓝色
- UINavigationcontrollerBar,UIbarButtonItem按钮以及backButton背景及背景颜色改变
- 自定义导航栏按钮UIBarButtonItem 文字或图片(定制)
- UI -- UIToolbar,UINavigationBar,UITabBar,UIBarButtonItem,UITabBarItem自定义方法总结
- 如何让UIBarButtonItem同时显示图片和文字