2012-06-05 17 views
16

के साथ सबव्यू को अपडेट नहीं करना मेरा प्रश्न यह है कि जब मैंने रूट व्यू के सबव्यूव के रूप में एक दृश्य जोड़ा। जब मैंने रूट व्यू के अल्फा मान को भी बदल दिया, तो सबव्यू में भी हो रहा है। वास्तव में मुझे अद्यतन करने की आवश्यकता नहीं है सबव्यू में। क्या ऐसा करने का कोई समाधान है।पर्यवेक्षक अल्फा मान

उत्तर

41

यह केवल जड़ देखने के अल्फा, दूसरों को नहीं

self.view.backgroundColor = [UIColor colorWithRed:0.0 green:0.0 blue:0.0 alpha:0.5]; 
+0

कि awesomw दोस्त .. –

+0

वास्तव में यह कमाल है। यह Google खोज के शीर्ष पर होना चाहिए। गंभीरता से – Katushai

+0

धन्यवाद आदमी, कमाल! –

2

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

आपके मौजूदा संरचना:

RootView->Subviews //Changing RootView alpha effects Subviews. 

आवश्यक संरचना:

RootView->View->Subviews(Still Added to RootView) //Changing alpha of Layer doesn't effect subviews. 

आशा इस मदद करता है।

+0

अच्छा लेकिन मेरी समस्या के लिए बिल्कुल उपयुक्त नहीं है। मेरे पास रूट व्यू है। मैं रूट व्यू के लिए अलर्ट व्यू के रूप में एक दृश्य जोड़ना चाहता हूं। और जब मैंने रूट व्यू में सबव्यूव जोड़ा तो रूट व्यू पारदर्शी दिखने चाहिए और तत्वों को उस दृश्य में नहीं पहुंचाया जाना चाहिए। मैं सबव्यू के साथ बातचीत को सक्षम करना चाहता हूं। –

+0

@skram: परत से, क्या आपका मतलब एक और दृश्य था? – user523234

+1

हाँ, क्षमा करें। मैं इसे फिर से वाक्यांश दूंगा। एक 'UIView' रूट और सबव्यू के बीच एक परत के रूप में कार्य करता है। – skram

9

बिल्डिंग @shabbirv द्वारा उत्तर पर, एक भी आईबी के रंग पिकर

color picker

1

उपयोग कर सकते हैं यह भी नीचे माध्यम से रूट दृश्य रंग बदलकर इस का समाधान होगा, इस subview प्रभावित नहीं करेगा।

[rootView setBackgroundColor:[[UIColor blackColor] colorWithAlphaComponent:0.7]]; 
संबंधित मुद्दे