// 數組中為需要登錄的控制器
private static let viewControllerClassesThatRequireUserSession: [AnyObject.Type] = [FavoritesCollectionViewController.self, CartViewController.self, AccountViewController.self]
func tabBarController(tabBarController: UITabBarController, shouldSelectViewController viewController: UIViewController) -> Bool {
// 如果用戶已經登錄返回true
guard !AccountManager.defaultAccountManager.isUserLoggedIn else {
return true
}
let visibleController: UIViewController
// 判斷將要跳轉的控制器,是否需要登錄
if let navigationController = viewController as? UINavigationController {
visibleController = navigationController.topViewController ?? viewController
} else {
visibleController = viewController
}
let shouldPresentSignInScreen = AppDelegate.viewControllerClassesThatRequireUserSession.contains { $0 == visibleController.dynamicType }
if shouldPresentSignInScreen {
SignInViewController.presentSignInViewController() { success in
if success {
// 登錄成功,跳轉到之前選擇的控制器
self.tabBarController.selectedViewController = viewController
}
}
return false
}
return true
}
代碼片段-需要登錄的控制器代碼實現
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來湿蛔,“玉大人膀曾,你說我怎么就攤上這事⊙羯叮” “怎么了添谊?”我有些...
- 正文 為了忘掉前任所踊,我火速辦了婚禮泌枪,結果婚禮上,老公的妹妹穿的比我還像新娘秕岛。我一直安慰自己碌燕,他們只是感情好,可當我...
- 文/花漫 我一把揭開白布继薛。 她就那樣靜靜地躺著修壕,像睡著了一般。 火紅的嫁衣襯著肌膚如雪遏考。 梳的紋絲不亂的頭發(fā)上慈鸠,一...
- 文/蒼蘭香墨 我猛地睜開眼截歉,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了烟零?” 一聲冷哼從身側響起瘪松,我...
- 正文 年R本政府宣布姿搜,位于F島的核電站寡润,受9級特大地震影響捆憎,放射性物質發(fā)生泄漏。R本人自食惡果不足惜梭纹,卻給世界環(huán)境...
- 文/蒙蒙 一躲惰、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧变抽,春花似錦礁扮、人聲如沸。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至逛钻,卻和暖如春僚焦,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背曙痘。 一陣腳步聲響...
推薦閱讀更多精彩內容
- 1.當代種種事件不同于歷史之處弄企,在于我們不知道它們會產生什么后果。 2.經驗和利益的偶然結合区拳,往往會向人們揭示...
- 周五時間圣猎,繼續(xù)我們的「人物產品集」專欄,每周一個人物菩颖,讓對產品有著狂熱追求與獨特品味的 NEXT 用戶样漆,和那些已經...
- 我之所以這么努力,是不想在年華老去鄙視自己晦闰,這是一本書封面上的開頭放祟,如果你想擁有你從未擁有的東西鳍怨,那么你必須去做你...