मुझे लगता है कि आप एक iOS7 एप्लिकेशन का निर्माण करना चाहते।
सामान्य तौर पर यह स्वचालित रूप से किया जाता है जब आप नए SDK के साथ निर्माण।
उदाहरण के लिए आप ऑटोलायआउट्स (दृश्य नियंत्रक दृश्य की पूरी ऊंचाई तक विस्तारित) के साथ UITableView
या UIScrollView
सेट करते हैं।
UIViewControllers
iOS 7 में एक नया संपत्ति edgesForExtendedLayout
कहा जाता है। डिफ़ॉल्ट मान यहाँ UIRectEdgeAll
है, कि नियंत्रक सभी किनारों को अपनी सामग्री का विस्तार होता है। आपके विचार नियंत्रक एक UINavigationController
या UITabBarController
में नेस्ट जाता है तो यह स्वचालित रूप से सामग्री सन्निवेश सेट है, तो आप ऊपर और नीचे तक स्क्रॉल करें और सभी आइटम (या कोशिकाओं या जो कुछ भी) देख सकते हैं। फिर जब आप सामग्री छिपा आप बार के उस नए iOS7 कलंक प्रभाव देख सकते हैं स्क्रॉल करें।
ध्यान रखें, नेविगेशन बार के नीचे अन्य UI तत्वों को पोजीशन करने के लिए, इसलिए वे दिखाई देते हैं और बार के साथ ओवरलैप नहीं करते हैं, आपको topLayoutGuide
और bottomLayoutGuide
के लिए दस्तावेज़ को पढ़ना चाहिए। प्रलेखन से:
"[...] उस सामग्री के लिए उच्चतम लंबवत सीमा इंगित करता है जिसे आप पारदर्शी या पारदर्शी UIKit बार (जैसे स्थिति या नेविगेशन बार) के पीछे नहीं दिखाना चाहते हैं। [.. ।] "
TopLayoutGuide
BottomLayoutGuide
यह स्वचालित रूप से समायोजित नहीं करता है। मैं कुलपति के लिए hiearchy को देखा और ऐसा लगता है कि वहाँ एक UINav नहीं है या UIToolbar टेबल कुलपति के अंदर नेस्टेड की तरह। क्या सूची में से एक होने का अनुमान है? यूआईविगेशन बार नेविगेशन नियंत्रक से आ रहा है। – Alan
आप सही हैं। यह स्वचालित रूप से क्षतिपूर्ति करता है। लेकिन अगर आप एक पूर्व iOS7 ऐप्लिकेशन से अपने एप्लिकेशन पोर्टिंग कर रहे हैं अगर तुम अगर तुम tableview के इनसेट में कोई संशोधन कर रहे हैं सावधान रहने की जरूरत है। मैं अपने पुल नीचे ताज़ा करने के लिए जो tableview के इनसेट शून्य पर सेट की वजह से के लिए tableview के इनसेट को संशोधित किया गया था। अब इसे नेविगेशन बार ऊंचाई के लिए खाते की जरूरत है। – Alan