NavigationItem的Title不居中,BackButton修改它得title

国外得一个链接: http://situee.blogspot.com/2014/10/ios-set-navigation-bar-back-button-title.html

最近迷上了简洁风,在使用StoryBoard Push到下一个视图,会在下一个视图的左上角又一个箭头和文字,表示返回键盘,我想那个文字去掉,自己写了一个类继承NavigationController然后用了一个优雅去掉文字.代码如下:

[[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(-100, -60)  forBarMetrics:UIBarMetricsDefault];

然后就遇到一个某一个NavigationItem的Title不居中如图:

NavigationItem的Title不居中,BackButton修改它得title

 

 

尼玛为什么会这样.........思考一下....真相是这样..

.NavigationItem的Title不居中,BackButton修改它得title

 

解决办法是修改backButton,但是你会发现很难修改..最后找到办法了,在本层视图得ViewDidload内添加如下代码

  NSArray *viewControllerArray = [self.navigationController viewControllers];

    long previousViewControllerIndex = [viewControllerArray indexOfObject:self] - 1;

    UIViewController *previous;

    if (previousViewControllerIndex >= 0) {

        previous = [viewControllerArray objectAtIndex:previousViewControllerIndex];

        previous.navigationItem.backBarButtonItem = [[UIBarButtonItem alloc]

                                                     initWithTitle:@"xx"

                                                     style:UIBarButtonItemStylePlain

                                                     target:self

                                                     action:nil];

 

好了...运行之后是这样:

NavigationItem的Title不居中,BackButton修改它得title

你可能感兴趣的:(button)