如题,解决这个问题有多重方法。
可以重写UINavigationItem 的setRightBarButtonItem和setLeftBarButtonItem函数,调整button的位置,
也可以创建一个UIBarButtonSystemItemFixedSpace 类型的UIBarButtonItem来调节button的位置。
这里介绍后者。
#define IOS7_NAVI_SPACE -10
UIBarButtonItem *flexSpacer = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace
target:self
action:nil];
flexSpacer.width = IOS7_NAVI_SPACE;
[self.navigationItem setRightBarButtonItems:[NSArray arrayWithObjects:flexSpacer,moreButtonItem, nil]];
[flexSpacer release];
通过填充一个空的item来调整位移。