2015-05-19 7 views
7

मैंने एक टेबल व्यू बनाया है और वहां से कहें कि एक उपयोगकर्ता ने एक सेल दबाया है, यह विस्तार पर जायेगा ITemView, लेकिन अभी एकमात्र समस्या यह है कि जब भी कोई उपयोगकर्ता विस्तार से होता है ItemView में कोई बैक बटन नहीं है, सोचा कि मैंने पहले से ही एक नेविगेशन एम्बेड किया हैनेविगेशन बार जोड़ा गया लेकिन कोई बैक बटन नहीं है?

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { 

    // Get the new view controller using [segue destinationViewController]. 
    var nav = segue.destinationViewController as! UINavigationController 
    var detailScene = nav.topViewController as! DetailViewController 


    // Pass the selected object to the destination view controller. 
    if let indexPath = self.tableView.indexPathForSelectedRow() { 
     let row = Int(indexPath.row) 
     detailScene.currentObject = objects?[row] as? PFObject 
    } 
} 

स्टोरीबोर्ड के लिए स्क्रीनशॉट:

enter image description here

नियंत्रक

यहाँ कोड है कि एक segue एक बार एक उपयोगकर्ता एक सेल दबाया प्रदर्शन करेंगे है

संपादित स्क्रीनशॉट

enter image description here

मैं नीचे इस सवाल का जवाब करने की कोशिश की, लेकिन अभी भी कोई वापस बटन

एक और स्क्रीनशॉट है, detailView नियंत्रक एक वापस बटन

enter image description here

नहीं है
+1

बैकबटन केवल पिछले व्यू कंट्रोलर पर जाने के लिए उपयोग किया जाता है जो एक ही नेविगेशन नियंत्रक (ढेर) पर है। इसलिए चूंकि आपका नया व्यू कंट्रोलर आपकी छवि के अनुसार एक नेविगेशन नियंत्रक के साथ एकमात्र है ... – Larme

+0

क्या मैं इसे UITableView पर वापस जाने के लिए उपयोग कर सकता हूं?, क्या आप कुछ जवाब दिखा सकते हैं ताकि मैं इसे स्वीकार कर सकूं – sinusGob

+0

नेविगेशन नियंत्रक को टेबल व्यू कंट्रोलर से पहले गुटेनमोर्गनुहू के उत्तर की तरह होना चाहिए। – Rasputin

उत्तर

9

नेविगेशन नियंत्रक के अंदर TableViewController एम्बेड करें। सीधे VisualViewController नहीं है। स्क्रीनशॉट देखें।

सुनिश्चित करें कि आपके टेबल व्यू कंट्रोलर और आपके DetailViewController को जोड़ने वाला सेग्यू प्रकार (उदा। पुश) प्रकार है। आपको नेविगेशनस्टैक के शीर्ष पर एक नया दृश्य सचमुच push करना होगा।

Check screenshot

+0

संपादित उत्तर की जांच करें, मैंने तालिका दृश्य से पहले नेविगेशन करने का प्रयास किया लेकिन अभी भी कोई बैक बटन नहीं – sinusGob

+0

क्या आपने स्टोरीबोर्ड में TableViewController को टैग किया था और फिर "Editor-> एम्बेड करें -> नेविगेशन कंट्रोलर" चुना था? – gutenmorgenuhu

+0

हाँ मैंने जो किया है। क्या आप जानते हैं कि इसकी समस्या क्या है? मैं वास्तव में उलझन में हूं – sinusGob

0

बस uinavigationUItableview साथ तो (शो)

1

के रूप में सेल मैं भी इस के साथ संघर्ष कर रहा था कनेक्ट करते हैं, और मैं segue के पहचानकर्ता नाम है, और अब यह काम करता है। बस तालिका दृश्य से दृश्य में सेग्यू (तीर) का चयन करें, फिर दाईं ओर जाएं, जहां विकल्प हैं, और विशेषता निरीक्षक दिखाएं चुनें। पहचानकर्ता के लिए एक क्षेत्र है।

3

मेरे पास अभी भी एक ही समस्या है, जो सेग्यू को हटाकर हल किया गया है, फिर से जोड़कर और इसे तुरंत पहचानकर्ता दे रहा है।

+0

इसके लिए धन्यवाद। आपने मुझे फिर से किया और फिर यह काम किया – user2875404

3

स्टोरीबोर्डवर्ड पर क्लिक करें, tableviewcontroller और Detailviewcontroller के बीच का लिंक। विशेषता निरीक्षक में आपको "एनिमेट्स" चेक पर क्लिक करने की आवश्यकता हो सकती है, भले ही यह चेक हो। "Kind" ड्रॉप डाउन मेनू में स्थित "दिखाएँ (उदा। पुश)" चुनने के बाद ऐसा करें। फिर अपना ऐप चलाएं और फिर अपने ऐप को रोकने के बाद उसी "एनिमेट्स" विकल्प को संशोधित करें। मुझे लगता है कि यह एक बग है और इसे हल करने के लिए यह समझने में मेरा एक घंटा लगा। इसके अतिरिक्त, आप बहिष्कृत "पुश" का उपयोग कर सकते हैं लेकिन यह एक चेतावनी को अवैध करेगा। अस्वीकार "पुश" स्टोरीबार्डसेग्यू इंस्पेक्टर इंस्पेक्टर में "दयालु" के अधीन है।

0

यदि आपका वर्तमान व्यू कंट्रोलर नेविगेशन नियंत्रक में एम्बेड किया गया है, तो आपको नेविगेशन नियंत्रक में विस्तार दृश्य नियंत्रक को एम्बेड करने की आवश्यकता नहीं है। बस एक बटन को विस्तार दृश्य नियंत्रक से कनेक्ट करें और बैक नेविगेशन स्वचालित रूप से आ जाएगा।

संबंधित मुद्दे