【问题标题】:Change back button title when pushing a UIViewController on UITableViewController在 UITableViewController 上推送 UIViewController 时更改返回按钮标题
【发布时间】:2015-01-04 01:58:52
【问题描述】:

查看层次结构:

UINavigationController
      ->UITableViewController(1)
             ->UITableViewController(2)
                   ->UIViewController(3)  

在 1 和 2 中我有这个代码:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    self.navigationItem.backBarButtonItem?.title = ""
}

它应该覆盖当前视图控制器上推送的下一个视图控制器的后退按钮标题。它适用于 1 -> 2。但它不适用于 2 -> 3。在 3 中,后退按钮标题有一个标题,即前一个 UITableViewController 的名称。

任何想法有什么问题吗?我正在使用 swift、xcode6.1 和 iOS8.1

【问题讨论】:

    标签: ios uitableview swift uiviewcontroller uinavigationcontroller


    【解决方案1】:

    您可以初始化一个没有标题的新后退按钮。只需将其放在每个视图控制器的 viewDidLoad() 中即可。

    self.navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: UIBarButtonItemStyle.Plain, target: nil, action: nil)
    

    --

    我将用我的经验扩展这个答案。所以我设法删除了后退按钮的标题,只显示后退箭头。在情节提要中,您必须选择在前一个视图控制器的导航栏中显示标题的导航项。有一个名为 Back Button 的属性。只需输入一个空格并保存。它将删除后退按钮的标题。

    更新 UIBarButtonItemStyle.Bordered 在 iOS 8.0 中已弃用。请改用UIBarButtonItemStyle.Plain

    【讨论】:

    【解决方案2】:

    谢谢, 如果你想使用客户返回按钮图片,你可以使用这个

        self.navigationController?.navigationBar.backIndicatorImage = UIImage(named: “backImage”)
        self.navigationController?.navigationBar.backIndicatorTransitionMaskImage = UIImage(named: “ backImage”)
    
        self.navigationItem.backBarButtonItem = UIBarButtonItem(title: “”, style: UIBarButtonItemStyle.Plain, target: nil, action: nil)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-11-29
      • 2013-01-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多