[英]Get the title of the tab selected in UITabBarController at application launch
我正在嘗試在應用程序啟動時獲取選項卡標題。
當用戶更改標簽時,我可以這樣做來讀取tabBarItem.title:
func tabBarController(
tabBarController: UITabBarController,
didSelectViewController viewController: UIViewController) {
UserActivity.trackScreen(name: viewController.tabBarItem.title)
}
初始選擇不會觸發此方法。 我在UITabVarController
的viewDidLoad
方法中嘗試了這種方法。
override func viewDidLoad() {
super.viewDidLoad()
UserActivity.trackScreen(name: self.selectedItem.title) // I think this is not set yet, it is nil.
}
這是行不通的。
如何在應用啟動時獲取所選的標簽欄項或將要選擇的標簽欄項?
在“選定”選項卡上執行操作是首次啟動的特殊情況,因為委托方法didSelectViewController
不會觸發。
如果 (並且可能是一個很大的“ if”),您可以假定第一個選項卡是應用程序啟動時選擇的選項卡,則此代碼將適用於處理首次啟動的情況:
if let vcs = self.viewControllers {
var firstVC = vcs[0] as UIViewController
UserActivity.trackScreen(name: firstVC.tabBarItem.title)
}
這對我有用。 開放獲取更好的答案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.