मेरे पास टेबलव्यू और सर्चबार के साथ एक अभिभावक वर्ग है जो टेबलव्यू नियंत्रक का उप-वर्ग है। SearchBar और searchdisplaycontroller के लिए प्रतिनिधि UISearchdisplaycontroller से विरासत में प्राप्त एक अलग वर्ग में सेट हैं। टेबलव्यू और सर्चबार के लिए डेटासोर्स और प्रतिनिधियों को इस वर्ग में अलग-अलग संभाला जाता है। कक्षाएं एआरसी के तहत हैं।खोज दृश्य को खारिज नहीं कर सकता
इसलिए, जब कोई उपयोगकर्ता खोज पर टैप करता है, तो इस श्रेणी में FilesListController (पैरेंट) कक्षा से नियंत्रण स्थानान्तरण होता है। अब, बटन को रद्द पर एक उपयोगकर्ता नल, searchbar प्रतिनिधि इस वर्ग अर्थात
- (void)searchBarCancelButtonClicked:(UISearchBar *) searchBar
में सेट करते हैं कहा जाता है, लेकिन पूर्ण स्क्रीन searchtableview नकारने के उद्देश्य को पूरा और parentviewcontroller को वापस नहीं करता है। हालांकि, अगर मैं खोज वर्ग में इस प्रतिनिधि को नहीं लिखता, तो यह ठीक से काम करता है।
- (BOOL)searchBarShouldBeginEditing:(UISearchBar *)searchBar
इस तरह:: मैं xib में जाएगा और कॉलिंग searchbar प्रतिनिधियों की स्थापना की है
self.searchResultsTableView.delegate = self;
self.searchResultsTableView.dataSource = self;
[parentFileViewController.searchDisplayController setDelegate:self];
कहाँ मैं गलत हो रहा हूँ? अग्रिम में धन्यवाद।
[self.searchDisplayController setActive: NO anima टेड: हाँ]; – jussi
हे धन्यवाद @ जुसी .. यह काम करता है !!! लेकिन यह खुद से क्यों खारिज नहीं करता है? ऐसा लगता है कि हम searchviewcontroller को खारिज करने के लिए मजबूर कर रहे हैं। –
क्योंकि कुछ नियंत्रक को भंग करने से पहले कुछ जानकारी स्टोर करना चाहते हैं। मैं इसे एक उत्तर के रूप में पोस्ट करूंगा। – jussi