मैं नेविगेशन कंट्रोलर में बैक बटन की डिफ़ॉल्ट कार्रवाई को ओवरराइट करने की कोशिश कर रहा हूं। मैंने लक्ष्य बटन को कस्टम बटन पर कार्रवाई प्रदान की है। विचित्र बात यह है कि इसे असाइन करते समय हालांकि बैकबटन विशेषता यह उन पर ध्यान नहीं देती है और यह केवल वर्तमान दृश्य को पॉप करता है और रूट पर वापस जाता है:
UIBarButtonItem *backButton = [[UIBarButtonItem alloc]
initWithTitle: @"Servers"
style:UIBarButtonItemStylePlain
target:self
action:@selector(home)];
self.navigationItem.backBarButtonItem = backButton;
जैसे ही मैंने इसे इसके माध्यम से सेट leftBarButtonItem
किया, navigationItem
यह मेरी कार्रवाई कहता है, हालांकि तब बटन एक तीर के बजाय एक सादे दौर की तरह दिखता है:
self.navigationItem.leftBarButtonItem = backButton;
रूट दृश्य पर वापस जाने से पहले मुझे अपनी कस्टम क्रिया को कॉल करने के लिए कैसे मिल सकता है? क्या डिफ़ॉल्ट बैक एक्शन को अधिलेखित करने का एक तरीका है, या क्या कोई ऐसा तरीका है जो हमेशा एक दृश्य को छोड़ते समय कहा जाता है ( viewDidUnload
ऐसा नहीं करता है)?