从容器视图中删除后退按钮标题

时间:2016-05-10 10:25:16

标签: ios objective-c iphone

enter image description here

我需要空的后退按钮标题,因此使用类别方法:

-(void)removeBackButtonTitle
{
    UIBarButtonItem *newBackButton =
    [[UIBarButtonItem alloc] initWithTitle:@""
                                     style:UIBarButtonItemStylePlain
                                    target:nil
                                    action:nil];
    [[self navigationItem] setBackBarButtonItem:newBackButton];
}

但我有一种情况需要将Container View和一些viewcontroller作为子视图控制器及其视图作为子视图。现在从该视图导航后,后退按钮标题不会设置为空。

5 个答案:

答案 0 :(得分:4)

只需将以下代码添加到viewDidLoad / viewWillAppear ..

即可
self.navigationController.navigationBar.topItem.title = @"";

这将从该后退按钮中删除后退文字。在这里,您可以根据需要设置自己的标题。

@preetam ..对于您的情况,每个视图控制器都有其生命周期方法viewDidLoad,viewWillAppear。

此外,您正在使用屏幕截图中显示的默认导航栏/自定义导航栏。

如果您使用默认值,则上面给出了答案。否则,您可以删除故事板本身中的后退文本。

希望有所帮助......

答案 1 :(得分:0)

尝试此代码并将setTitle设置为空白@"":

[self.navigationItem.backBarButtonItem setTitle:@""]; //make Title for backBarbutton to blank

它适合你

答案 2 :(得分:0)

您需要在(上一个)视图控制器中添加以下代码行,而不想显示后退按钮标题。

- (void)viewWillAppear:(BOOL)animated {
    self.title = @"Your Title";
}

- (void)viewWillDisappear:(BOOL)animated {
    self.title = @"";
}

答案 3 :(得分:0)

对于Swift 3,你可以使用它:

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
  let backItem = UIBarButtonItem()
  backItem.title = ""
  navigationItem.backBarButtonItem = backItem}

答案 4 :(得分:-1)

尝试以下代码行。

$scope.sort = function (column) {
        if ($scope.orderProp === column) {
            $scope.direction = !$scope.direction;
        } else {
            $scope.orderProp = column;
            $scope.direction = false;
        }
    }