नीचे मैं एक UISearchBar और UISearchDisplayController है, सब कुछ अच्छा काम करता है, लेकिन यह नीचे टेक्स्ट फ़ील्ड के बगल के बजाय मेरी गुंजाइश चयनकर्ता प्रदर्शित करता है। मुझे पता है कि यह उम्मीद कार्रवाई है तो उपकरण को लैंडस्केप में है, लेकिन यह इस तरह लग रही समाप्त होता है के बाद से मैं एक UISplitViewController के मास्टर दृश्य में UISearchBar है:फोर्स गुंजाइश बार UISearchBar
वहाँ मजबूर करने के लिए कोई तरीका है सभी इंटरफ़ेस ओरिएंटेशन में टेक्स्ट फ़ील्ड के नीचे प्रदर्शित करने के लिए स्कोप बार (मुझे पता है कि यह आईपैड पर Mail.app में अच्छी तरह से काम करता है, इसलिए संभवतः, लेकिन कौन जानता है कि ऐप्पल ने ऐसा करने के विकल्प को छिपाने का फैसला किया है)
मुझे ऐसा करने का कोई तरीका मिला, लेकिन यह एक सार्वजनिक एपीआई नहीं है। [self.searchDisplayController.searchBar setCombinesLandscapeBars: NO]; इसे खोज पर कॉल करना सुनिश्चित करें डिस्प्ले कंट्रोलर की खोजबार और यूआईएसearchBar स्वयं नहीं। स्पष्ट रूप से खोज प्रदर्शन नियंत्रक इस संपत्ति का प्रबंधन कर रहा है। – axiixc
मुझे एक ही समस्या है और सेटकॉम्बिन लैंडस्केपबार्स: वास्तव में समस्या हल नहीं हुई है, लेकिन ऐप्पल का नमूना "टेबलशर्च" भी उस विधि का उपयोग किये बिना समान परिणाम प्राप्त करता है। क्या आपको एक और समाधान मिला? – nacho4d
यदि आपको अस्वीकार नहीं किया जाता है तो आप इस कोड का उपयोग कर सकते हैं, अगर सेब के इंजीनियरों का फैसला होता है कि निजी विधि अब और उपलब्ध नहीं होगी, तो कोई चेतावनी और सुरक्षित नहीं फेंकता है। अगर ([self.searchDisplayController।searchBar प्रतिसाद देता है चयनकर्ता: @ चयनकर्ता (सेटकॉम्बिन लैंडस्केपबर्स :)]) { objc_msgSend (self.searchDisplayController.searchBar, @selector (setCombinesLandscapeBars :), NO);} – nacho4d