नीचे तेजी से 3 में मेरे लिए काम किया था .इस कोड:
1> उपवर्ग UITabBarController और एक इवर साथ विधि के नीचे दो को लागू:
class MyTabBarController: UITabBarController ,UITabBarControllerDelegate { var previousSelectedTabIndex : Int = -1 }
2> viewDidLoad
में tabbar प्रतिनिधि सेट
override func viewDidLoad() {
super.viewDidLoad()
self.delegate = self // you must do it}
func tabBarController(_ tabBarController: UITabBarController, didSelect viewController: UIViewController) {
self.previousSelectedTabIndex = tabBarController.selectedIndex
}
func tabBarController(_ tabBarController: UITabBarController,
shouldSelect viewController: UIViewController) -> Bool {
if self.previousSelectedTabIndex == tabBarController.selectedIndex {
let nav = viewController as! UINavigationController // mine in nav_VC
for vc in nav.childViewControllers {
if vc is YUOR_DESIRED_VIEW_CONTROLLER {
nav.popToViewController(vc, animated: true)
return false// IT WONT LET YOU GO TO delegate METHOD
}
}
}
return true
}
tabBarController.selectedIndex आपके द्वारा चयनित टैब दे
टैबबारकंट्रोलर_शोल्ड चयन करेंदृश्य नियंत्रक विधि आप कुछ वांछित गणना के साथ अपना वांछित दृश्य नियंत्रक सेट कर सकते हैं।
तुम दोनों उपरोक्त विधि के साथ ऊपर कोड खेलने नहीं मिल रहा है और आप को पता है कि कैसे दोनों एक साथ
नहीं वास्तव में मुझे मदद की एनिमेटेड बदल रहा है। जब मैंने एनिमेटेड को YES पर सेट किया था, तो मेरा टैब बार और न ही नेविगेशन नियंत्रक में कोई अन्य बटन काम नहीं कर रहा था। – Glogo