[英]iOS Navigation Bar Title set dinamically is making a ellipsis in text when view appears
我試圖在導航欄中設置后退按鈕標題,就像這樣
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
self.title = self.backUpTitle
}
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated)
self.title = "Back"
}
其中self.backUpTitle
具有當前ViewController的原始標題。
效果很好,但是每次單擊“上一步”時我都會很快見效:導航欄的標題出現,前三個字母后接省略號(例如:“標題”將顯示為“山雀”。 ”),然后在完全顯示該視圖后,它會顯示整個標題,沒有任何問題。
問題是...在正常情況下不會發生,因此我想這與我設置后退按鈕標題的解決方案有關。
問題是: 有沒有辦法避免這種影響? 我在錯誤的函數中調用self.title
嗎?
我正在使用Xcode 8和iOS 10.0
我嘗試在自己的計算機上運行您的代碼,但沒有顯示相同的問題; 我認為您可能正在使用自定義視圖作為導航欄的標題,而您的self.backUpTitle位於導致省略號的自定義視圖內部。
一些建議:
如果只想以這種方式顯示“創建用戶”而不用省略號,則可能要刪除導航欄的所有自定義視圖,並像在代碼中一樣設置ViewController標題。
使用“ self.title”將更改您的ViewController的標題,請確保將ViewController嵌入到UIViewController中。 但是,如果您創建了導航欄,則將標題設置為:
navigationBar.topItem.title = “Create User”
重申一下,這是我的代碼在UINavigationController中嵌入的ViewController下的樣子(看起來像您的樣子):
var backUpTitle: String! override func viewDidLoad() { backUpTitle = "Create User" } override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) self.title = self.backUpTitle } override func viewWillDisappear(_ animated: Bool) { super.viewWillDisappear(animated) self.title = "Back" }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.