码迷,mamicode.com
首页 > 移动开发 > 详细

解决 ios7.0 以后自定义导航栏左边按钮靠右的问题

时间:2016-04-27 18:42:31      阅读:215      评论:0      收藏:0      [点我收藏+]

标签:

解决 ios7.0 以后自定义导航栏左边按钮靠右的问题

www.111cn.net 编辑:edit02_lz 来源:转载
最近开发了一个ios的app,在ios7.0+出现自定义导航栏左边按钮出现靠右的情况,后来自己解决了,解决办法如下

1.自定义按钮

 代码如下 复制代码
//左按钮
UIButton *leftBtn = [[UIButton alloc]initWithFrame:RectWithPara(-20, 0, 44, 44)];
[leftBtn addTarget:self action:@selector(btnClicked:) forControlEvents:UIControlEventTouchUpInside];//设置按钮点击事件
[leftBtn setBackgroundImage:ImageNamed(@"ic_fanhui_normal.png") forState:UIControlStateNormal ];//设置按钮正常状态图片
[leftBtn setBackgroundImage:ImageNamed(@"ic_fanhui_pressed.png") forState:UIControlStateSelected];//设置按钮选中图片


2.初始化UIBarButtonItem

 代码如下 复制代码
UIBarButtonItem *leftBarButon = [[UIBarButtonItem alloc]initWithCustomView:leftBtn];


3.调整位置以及设置导航栏的左边图标

 代码如下 复制代码
// 调整 leftBarButtonItem 在 iOS7 下面的位置

if(([[[UIDevice currentDevice] systemVersion] floatValue]>=7.0?20:0))

{
    UIBarButtonItem *negativeSpacer = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace
    target:nil action:nil];
    negativeSpacer.width = -20;//这个数值可以根据情况自由变化
    self.navigationItem.leftBarButtonItems = @[negativeSpacer, leftBarButon];
}else

    self.navigationItem.leftBarButtonItem = leftBarButon;

解决 ios7.0 以后自定义导航栏左边按钮靠右的问题

标签:

原文地址:http://www.cnblogs.com/xiaoxiaoyublogs/p/5439621.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!