我在class homeVC: UICollectionViewController
中有以下代码,以便在导航栏中显示标题,并且按预期工作。
override func viewDidLoad() {
super.viewDidLoad()
.
.
.
self.navigationItem.title = PFUser.current()?.username?.uppercased()
.
.
}
但是当我点击按钮转到另一个视图控制器然后回到homeVC视图控制器self.navigationItem.title
时没有显示任何内容。我想知道为什么会这样?
以下代码将转到另一个视图控制器
@objc func followersTap() {
category = "followers"
// make references to followersVC
let followers = self.storyboard?.instantiateViewController(withIdentifier: "followersVC") as! followersVC
// present
self.navigationController?.pushViewController(followers, animated: true)
}
这是要转到的视图控制器,在此视图控制器中,我不想显示前一个视图控制器的标题,因此我使用self.navigationController!.navigationBar.topItem!.title = ""
将其设为空我回到上一个视图控制器,标题也是空的,为什么?
class followersVC: UITableViewController{
override func viewDidLoad() {
super.viewDidLoad()
self.navigationController!.navigationBar.topItem!.title = ""
self.tableView.reloadData()
}
我试图不在第二个视图控制器左上角显示第一个视图控制器标题,其中后退按钮是,并保持第一个和第二个视图控制器标题显示。
答案 0 :(得分:1)
如果您的计划是不显示先前视图控制器的标题,则解决方案如下:
变化:
self.navigationItem.title = PFUser.current()?.username?.uppercased()
为:
self.title = PFUser.current()?.username?.uppercased()
并改变:
self.navigationController!.navigationBar.topItem!.title = ""
为:
self.title = ""
答案 1 :(得分:0)
尝试移动self.navigationItem.title = PFUser.current()?.username?.uppercased()
viewDidAppear()
,这应该有帮助