दिलचस्प पोस्ट
उसी कुंजी के तहत कई मानों के साथ हैशमैप ग्रहण शुरू नहीं होगा और मैंने कुछ भी नहीं बदला है एएसपी.नेट एमवीसी में मौजूदा उपयोगकर्ता कैसे प्राप्त करें I जावास्क्रिप्ट का उपयोग कर इफ्रेम में क्लिक करें क्या आप मक्खी पर टेम्पलेट यूआरएल बदल सकते हैं? फेसबुक जे एस एसडीके के एफबी.एपीआई ('/ आई') विधि मुझे ग्राफ़ एपीआई v2.4 + एक जेएलैबल में निहित छवि अपडेट करना – समस्याएं पृष्ठ सामग्री को सीआरएल का उपयोग कैसे करें? कुछ वैक्टर के तत्वों के सभी संभव संयोजन उत्पन्न करें (कार्टेसीयन उत्पाद) स्थिति के आधार पर एक निश्चित मार्ग पर पुनर्निर्देशित करना मुझे jquery मोबाइल में index.html को सारी स्क्रिप्ट क्यों डालनी है अपाचे स्पार्क वेब यूआई में "स्टेज स्किप" का क्या मतलब है? Google मानचित्र एपीआई v3: इन्फोवंडो सही ढंग से आकार नहीं ले रहा है समझ के लिए स्कला पर बेमेल टाइप करें प्रत्येक श्रेणी के लिए शीर्ष 10 रिकॉर्ड चुनें

IPhone UIView Z अनुक्रमणिका कैसे सेट करें?

मैं एक दृश्य को दूसरे के ऊपर ले जाना चाहता हूं, मैं कैसे देखने के z इंडेक्स को कैसे जान सकता हूं, और कैसे शीर्ष पर आगे बढ़ना है?

वेब के समाधान से एकत्रित समाधान "IPhone UIView Z अनुक्रमणिका कैसे सेट करें?"

UIView भाई-बहन उन क्रम में खड़ी किए जाते हैं जिसमें उन्हें उनके पर्यवेक्षण में जोड़ा जाता है। दृश्य क्रम प्रबंधित करने के लिए UIView पदानुक्रम विधियां और गुण हैं UIView.h में:

 @property(nonatomic,readonly) UIView *superview; @property(nonatomic,readonly,copy) NSArray *subviews; - (void)removeFromSuperview; - (void)insertSubview:(UIView *)view atIndex:(NSInteger)index; - (void)exchangeSubviewAtIndex:(NSInteger)index1 withSubviewAtIndex:(NSInteger)index2; - (void)addSubview:(UIView *)view; - (void)insertSubview:(UIView *)view belowSubview:(UIView *)siblingSubview; - (void)insertSubview:(UIView *)view aboveSubview:(UIView *)siblingSubview; - (void)bringSubviewToFront:(UIView *)view; - (void)sendSubviewToBack:(UIView *)view; 

भाई-बहन के विचारों को वापस उप-दृश्यों के सरणी में आदेश दिया जाता है। तो सबसे बड़ा दृश्य होगा:

 [parentView.subviews lastObject]; 

और नीचे दृश्य होगा:

 [parentView.subviews objectAtIndex:0]; 

Kolin Krewinkel की तरह कहा, [parentView bringSubviewToFront:view] शीर्ष पर विचार लाएगा, लेकिन यह केवल मामला है अगर विचार सभी पदानुक्रम में भाई बहन हैं

दृश्य के z- इंडेक्स को बदलने के लिए आप दृश्य की परत की zPosition प्रॉपर्टी (यह एक CALayer ऑब्जेक्ट है) का उपयोग कर सकते हैं।

 theView.layer.zPosition = 1; 

जैसा कि विक्टर नोर्डलिंग ने कहा, "बड़े मूल्य शीर्ष पर हैं। आप किसी भी मूल्यों का उपयोग कर सकते हैं, जिनमें नकारात्मक मान शामिल हैं।" डिफॉल्यू मूल्य शून्य है।

आपको परत तक पहुंचने के लिए क्वार्ट्ज़कोर फ़्रेमवर्क आयात करना होगा। बस अपने कार्यान्वयन फ़ाइल के शीर्ष पर कोड की इस पंक्ति को जोड़ें

 #import "QuartzCore/QuartzCore.h" 
 [parentView bringSubviewToFront:view] ; 

आईबी और स्विफ्ट

बहते हुए लेआउट को देखते हुए जहां पीले रंग का पर्यवेक्षण और लाल, हरा, और नीला है, पीले रंग के उपशीर्षक हैं,

यहां छवि विवरण दर्ज करें

लक्ष्य एक सबव्यू (चलो कहना हरा) को ऊपर ले जाने के लिए है

यहां छवि विवरण दर्ज करें

इंटरफ़ेस बिल्डर में

इंटरफ़ेस बिल्डर में आपको जो दस्तावेज़ की रूपरेखा में सूची के निचले भाग में सबसे ऊपर दिखाना चाहते हैं उसे खींचें।

यहां छवि विवरण दर्ज करें

वैकल्पिक रूप से, आप दृश्य का चयन कर सकते हैं और फिर मेनू में संपादक पर जायें > व्यवस्था करें> सामने भेजें

स्विफ्ट में

इस कार्यक्रम को करने के लिए कई अलग-अलग तरीके हैं I

विधि 1

 yellowView.bringSubviewToFront(greenView) 
  • यह विधि ऊपर दिए गए आईबी उत्तर के प्रोग्रामेटिक समकक्ष है।
  • यह केवल तभी काम करता है यदि सबव्यूज़ एक-दूसरे के भाई-बहन हैं
  • yellowView.subviews की एक सरणी yellowView.subviews में yellowView.subviews । यहां, bringSubviewToFront greenView को इंडेक्स 0 से 2 तक ले जाता है। इस के साथ मनाया जा सकता है

     print(yellowView.subviews.indexOf(greenView)) 

विधि 2

 greenView.layer.zPosition = 1 
  • यह विधि सिर्फ जेड-अक्ष पर उच्चतर स्तर (यूजर के करीब) की 3 डी स्थिति को स्थानांतरित करती है चूंकि डिफ़ॉल्ट सभी अन्य दृश्यों के लिए 0 , परिणाम यह है कि greenView ऐसा दिखता है कि यह शीर्ष पर है हालांकि, यह अभी भी yellowView.subviews सरणी के सूचकांक 0 पर बनी हुई है। इससे कुछ अप्रत्याशित परिणाम हो सकते हैं, हालांकि, क्योंकि टैप ईवेंट जैसी चीज़ें सबसे पहले सबसे अधिक सूचकांक संख्या के साथ दृश्य पर जाएंगी। इस कारण से, ऊपर विधि 1 के साथ जाने के लिए बेहतर हो सकता है।
  • यह सुनिश्चित करने के लिए CGFloat(FLT_MAX) को CGFloat(FLT_MAX) पर सेट किया जा सकता है कि यह शीर्ष पर है

यदि आप इसे XCode के इंटरफ़ेस बिल्डर के माध्यम से करना चाहते हैं, तो आप संपादक-> व्यवस्था के तहत मेनू विकल्पों का उपयोग कर सकते हैं। वहां आपको "भेजें टू फ्रंट", "भेजें टू बैक", आदि मिलेगी।

इस दृश्य के भीतर आप शीर्ष पर लाना चाहते हैं … (तेज में)

 superview?.bringSubviewToFront(self) 

यदि आप cocos2d का उपयोग कर रहे हैं, तो आप [parentView bringSubviewToFront: view] के साथ एक समस्या देख सकते हैं, कम से कम यह मेरे लिए काम नहीं कर रहा था इस दृश्य को लाने के बजाय मैं सामने करना चाहता था, मैं अन्य विचारों को वापस भेजता हूं और यही चाल है।

 [[[CCDirector sharedDirector] view] sendSubviewToBack:((UIButton *) button)]; 

मैं स्टोरीबोर्ड UI इंटरफ़ेस में UI को समायोजित करना चाहता हूं। मैं उन दृश्यों के z-Index को इंगित करने के लिए tag का उपयोग करता हूं।

तेज 3 में

 // Connect to those views, who need to adjust their z position. @IBOutlet var viewSetZIndex: [UIView]! // In `viewDidLoad`, or `awakeFromNib` for v in viewSetZIndex { // Use `tag` to adjust `zPosition` v.layer.zPosition = CGFloat(v.tag) }